sharedvolumebundle.h

来自「java实现的简单的分形树。简单易学!是学习分形知识的很好的例子。其java语法」· C头文件 代码 · 共 46 行

H
46
字号
// --------------------------------------------------------------------------
// Dingus project - a collection of subsystems for game/graphics applications
// --------------------------------------------------------------------------

#ifndef __SHARED_VOLUME_BUNDLE_H
#define __SHARED_VOLUME_BUNDLE_H

#include "SharedResourceBundle.h"
#include "VolumeCreator.h"
#include "../kernel/Proxies.h"
#include "DeviceResource.h"
#include "../utils/Singleton.h"

namespace dingus {


class CSharedVolumeBundle :	public CSharedResourceBundle<CD3DVolumeTexture,IVolumeCreator::TSharedPtr>,
								public CSingleton<CSharedVolumeBundle>,
								public IDeviceResource
{
public:
	void registerVolume( CResourceId const& id, const IVolumeCreator::TSharedPtr& creator );

	virtual void createResource();
	virtual void activateResource();
	virtual void passivateResource();
	virtual void deleteResource();

protected:
	virtual void deleteResource( CD3DVolumeTexture& resource ) { delete &resource; }

private:
	IMPLEMENT_SIMPLE_SINGLETON(CSharedVolumeBundle);
	CSharedVolumeBundle() { };
	virtual ~CSharedVolumeBundle() { clear(); };
};

}; // namespace


/// Shortcut macro
#define RGET_S_VOLTEX(rid) dingus::CSharedVolumeBundle::getInstance().getResourceById(rid)


#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?