Open Reality Reference Guide
 
Loading...
Searching...
No Matches
fbshaderlayout.h File Reference

FBShader layout file. More...

#include <kaydaradef.h>
#include <fbsdk/fbshader.h>
#include <fbcontrols/fbcontrols.h>

Go to the source code of this file.

Classes

class  FBShaderLayout
 Shader layout class. More...
 

Macros

#define FBSDK_DLL   K_DLLIMPORT
 Be sure that FBSDK_DLL is defined only once...
 
#define FBRegisterShaderLayout(ClassName, UniqueNameStr, IconFilename)
 Register a Shader layout class.
 
#define FBShaderLayoutDeclare(ClassName, Parent)
 Shader layout declaration.
 
#define FBShaderLayoutImplementation(ThisComponent)    FBClassImplementation( ThisComponent )
 Shader layout implementation.
 

Functions

 __FB_FORWARD (FBShaderLayout)
 
 FB_DEFINE_COMPONENT (K_DLLIMPORT, ShaderLayout)
 

Detailed Description

FBShader layout file.

Definition in file fbshaderlayout.h.

Macro Definition Documentation

◆ FBRegisterShaderLayout

#define FBRegisterShaderLayout (   ClassName,
  UniqueNameStr,
  IconFilename 
)
Value:
HIObject RegisterShaderLayout##ClassName( HIObject /*pOwner*/,const char * /*pName*/,void *pData) \
{\
ClassName *Class = new ClassName( (FBShader*)FBGetFBComponent((HIObject)pData) ); \
Class->mAllocated = true; \
if (Class->FBCreate()) { \
return Class->GetHIObject(); \
} else { \
delete Class; \
return NULL; \
} \
} \
FBLibraryModule( ClassName ) \
{ \
FBRegisterObject( ClassName,"renderer/usershader/ui",UniqueNameStr,UniqueNameStr" Shader Layout",RegisterShaderLayout##ClassName, true, IconFilename ); \
}
Shader class.
Definition fbshader.h:453
K_DLLIMPORT FBComponent * FBGetFBComponent(HIObject pObject, bool pAutoCreate=true)
Get the FBComponent from an Internal Object.

Register a Shader layout class.

Parameters
ClassNameName of Shader layout class.
UniqueNameStrUnique name of class.
IconFilenameFilename of associated icon.

Definition at line 67 of file fbshaderlayout.h.

◆ FBSDK_DLL

#define FBSDK_DLL   K_DLLIMPORT

Be sure that FBSDK_DLL is defined only once...

Definition at line 48 of file fbshaderlayout.h.

◆ FBShaderLayoutDeclare

#define FBShaderLayoutDeclare (   ClassName,
  Parent 
)
Value:
FBClassDeclare( ClassName,Parent ); \
public: \
ClassName(FBShader* pShader):Parent(pShader) { FBClassInit; } \
private:
#define FBClassDeclare(Name, Parent)
Class declaration.
Definition fbdefines.h:85
#define FBClassInit
Class initialization.
Definition fbdefines.h:64

Shader layout declaration.

Parameters
ClassNameName of Shader layout class.
ParentParent of Shader layout class.

Definition at line 88 of file fbshaderlayout.h.

◆ FBShaderLayoutImplementation

#define FBShaderLayoutImplementation (   ThisComponent)     FBClassImplementation( ThisComponent )

Shader layout implementation.

Parameters
ThisComponentName of Shader layout class to implement.

Definition at line 97 of file fbshaderlayout.h.