fbcharactersolver.h File Reference

#include <kaydaradef.h>
#include <fbsdk/fbcomponent.h>
#include <fbsdk/fbcore.h>
#include <fbsdk/fbcharactermanipulator.h>
#include <fbsdk/fbcharacter.h>
#include <fbsdk/fbcharacterpose.h>
#include <fbsdk/fbobjectpose.h>

Go to the source code of this file.

Classes

class  FBCharacterSolver
 Constraint class. More...

Defines

#define FBSDK_DLL   K_DLLIMPORT
 Be sure that FBSDK_DLL is defined only once...
#define FBRegisterCharacterSolver(UniqueNameStr, ClassName, Label, Description, IconFilename)
 Register the constraint.
#define FBCharacterSolverDeclare(ClassName, Parent)
 Constraint class declaration.
#define FBCharacterSolverImplementation(ThisComponent)   FBClassImplementation( ThisComponent )
 Constraint class implementation.

Functions

 FB_DEFINE_COMPONENT (FBSDK_DLL, CharacterSolver)
 __FB_FORWARD (FBCharacterSolver)
FBSDK_DLL int FBGetCharacterExternalSolverCount ()
 Get character external solver count.
FBSDK_DLL const char * FBGetCharacterExternalSolverName (int pIndex)
 Get character external solver name.
FBSDK_DLL int FBGetCharacterExternalSolverIndex (const char *pName)
 Get character external solver index.
FBSDK_DLL FBCharacterSolverFBInstanciateCharacterExternalSolver (int pIndex, const char *pSolverName=NULL)
 Instanciate the given external character solver.

Define Documentation

#define FBSDK_DLL   K_DLLIMPORT

Be sure that FBSDK_DLL is defined only once...

Definition at line 50 of file fbcharactersolver.h.

#define FBRegisterCharacterSolver (   UniqueNameStr,
  ClassName,
  Label,
  Description,
  IconFilename 
)
Value:
HIObject RegisterCharacterSolver##ClassName##Create( HIObject /*pOwner*/,const char* pName,void * /*pData*/) \
    { \
      ClassName *Class = new ClassName(pName); \
        Class->UniqueName = UniqueNameStr; \
        if (Class->FBCreate()) { \
            return Class->GetHIObject(); \
        } else { \
            delete Class; \
            return NULL; \
        } \
    } \
\
    FBLibraryModule( ClassName ) \
    {   \
        FBRegisterObject( ClassName##R1,"FbxStorable/CharacterSolver",UniqueNameStr,Description,RegisterCharacterSolver##ClassName##Create, true, IconFilename ); \
        FBRegisterObject( ClassName##R2,"Character/Solvers",UniqueNameStr,Description,RegisterCharacterSolver##ClassName##Create,true, IconFilename ); \
    }

Register the constraint.

Parameters:
UniqueNameStrUnique name.
ClassNameName of the constraint class.
LabelShort description of constraint.
DescriptionLong description of constraint.
IconFilenameFilename of associated icon.

Definition at line 73 of file fbcharactersolver.h.

#define FBCharacterSolverDeclare (   ClassName,
  Parent 
)
Value:
FBClassDeclare( ClassName, Parent ); \
  public: \
    ClassName(const char* pName):Parent(pName) { FBClassInit; } \
  private:

Constraint class declaration.

Parameters:
ClassNameConstraint class name.
ParentParent class name.
Warning:
The class must inherit directly from FBCharacterSolver.

Definition at line 97 of file fbcharactersolver.h.

#define FBCharacterSolverImplementation (   ThisComponent)    FBClassImplementation( ThisComponent )

Constraint class implementation.

Parameters:
ThisComponentThe name of the class to implement.

Definition at line 106 of file fbcharactersolver.h.


Function Documentation

FB_DEFINE_COMPONENT ( FBSDK_DLL  ,
CharacterSolver   
)
FBSDK_DLL int FBGetCharacterExternalSolverCount ( )

Get character external solver count.

Returns:
Number of external character solver available.
FBSDK_DLL const char* FBGetCharacterExternalSolverName ( int  pIndex)

Get character external solver name.

Parameters:
pIndexIndex of external solver.
Returns:
Name of the external solver specified at the provided index.
FBSDK_DLL int FBGetCharacterExternalSolverIndex ( const char *  pName)

Get character external solver index.

Parameters:
pNameName of external solver.
Returns:
Index of external solver specified at the provided name.
FBSDK_DLL FBCharacterSolver* FBInstanciateCharacterExternalSolver ( int  pIndex,
const char *  pSolverName = NULL 
)

Instanciate the given external character solver.

Parameters:
pIndexIndex of the registered external character solver.
pSolverNameName of external solver.
Returns:
Instance of the external character solver specified by the Index.