1#ifndef __FBSHADERLAYOUT_H__
2#define __FBSHADERLAYOUT_H__
43#include <kaydaradef.h>
48 #define FBSDK_DLL K_DLLIMPORT
58#ifdef FBSDKUseNamespace
59 namespace FBSDKNamespace {
67#define FBRegisterShaderLayout( ClassName,UniqueNameStr, IconFilename ) \
68 HIObject RegisterShaderLayout##ClassName( HIObject ,const char * ,void *pData) \
70 ClassName *Class = new ClassName( (FBShader*)FBGetFBComponent((HIObject)pData) ); \
71 Class->mAllocated = true; \
72 if (Class->FBCreate()) { \
73 return Class->GetHIObject(); \
79 FBLibraryModule( ClassName ) \
81 FBRegisterObject( ClassName,"renderer/usershader/ui",UniqueNameStr,UniqueNameStr" Shader Layout",RegisterShaderLayout##ClassName, true, IconFilename ); \
88#define FBShaderLayoutDeclare( ClassName,Parent ) \
89 FBClassDeclare( ClassName,Parent ); \
91 ClassName(FBShader* pShader):Parent(pShader) { FBClassInit; } \
97#define FBShaderLayoutImplementation( ThisComponent ) \
98 FBClassImplementation( ThisComponent )
119#ifdef FBSDKUseNamespace
Used to build the user interface.
FBShaderLayout(FBShader *pShader=NULL)
Constructor.
FBPropertyShader Shader
Property : Shader.
#define __FBClassDeclare(Name, Parent)
For internal use only.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
Contains the user interface components for the SDK.
#define FB_DEFINE_COMPONENT(DllTag, Type)
Define a component and give it the ability to be a property.
Declaration for the classes FBShaderManager, FBShader, FBPropertyListShader and other subclasses.
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.