sharedsurfacebundle.h

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

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

#pragma warning(disable:4786)
#ifndef __SHARED_SURFACE_BUNDLE_H
#define __SHARED_SURFACE_BUNDLE_H

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

namespace dingus {


class CSharedSurfaceBundle :public CSharedResourceBundle<CD3DSurface,ISurfaceCreator::TSharedPtr>,
							public CSingleton<CSharedSurfaceBundle>,
							public IDeviceResource
{
public:
	void registerSurface( CResourceId const& id, const ISurfaceCreator::TSharedPtr& creator );

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

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

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

}; // namespace


/// Shortcut macro
#define RGET_S_SURF(rid) dingus::CSharedSurfaceBundle::getInstance().getResourceById(rid)


#endif

⌨️ 快捷键说明

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