FBCharacterSolver Class Reference
 
 
 
FBCharacterSolver Class Reference

This reference page is linked to from the following overview topics: MotionBuilder 2014.


#include <fbcharactersolver.h>


Class Description

Constraint class.

Definition at line 115 of file fbcharactersolver.h.

Inheritance diagram for FBCharacterSolver:
FBConstraint FBBox FBComponent FBPlug FBWrapperHolder

Public Member Functions

  FBCharacterSolver (const char *pName, HIObject pObject=NULL)
  Constructor.
  IObject_Declare (K_IMPLEMENTATION)
FBEvaluateInfo BackgroundEvaluateInfoBegin (FBEvaluateInfo *pSourceEvaluateInfo, bool pEvaluateCandidates=false)
  Start background evaluation.
FBEvaluateInfo BackgroundEvaluateInfoRecursiveBegin (FBEvaluateInfo *pSourceEvaluateInfo, bool pForceUpdateLocals=false)
  Start recursive background evaluation.
void  BackgroundEvaluateInfoEnd (FBEvaluateInfo *pBackgroundEvaluateInfo)
  Release background evaluation info - very important.
bool  BackgroundEvaluateInfoNotify (FBEvaluateInfo *pBackgroundEvaluateInfo, kBackgroundEvaluationCallback pFunction, void *pCustomData=NULL)
  Enable evaluation notification.
void  ResetConnectorSetup ()
virtual
FBCharacterManipulatorCtrlSet
CreateCharacterManipulatorCtrlSet (const char *pName)
virtual double  GetCharacterSolverVersion ()
  Version of the solver. Needs to be overloaded in derived class.
virtual int  GetExtraFKCount ()
  Return number of extra FK model (ex.
virtual const char *  GetExtraFKNameAt (int pIndex)
  Return the specified extra FK Name (ex.
virtual FBBodyPartId  GetExtraFKBodyPartAt (int pIndex)
  Return The specified extra FK BodyPart (ex.
virtual int  GetExtraBoneCount ()
  Return number of extra Bone model (ex.
virtual const char *  GetExtraBoneNameAt (int pIndex)
  Return The specified extra Bone name (ex.
virtual FBBodyPartId  GetExtraBoneBodyPartAt (int pIndex)
  Return The specified extra Bone BodyPart (ex.
FBModel GetExtraBoneModelAt (int pIndex)
  Return The specified extra Bone model (ex.
FBModelMarker GetExtraFKModelAt (int pIndex)
  Return the specified extra FK model (ex.
void  SetExtraBoneModelAt (FBModel *pModel, int pIndex)
  Set the specified extra Bone model for a specified Extra Bone Index.
void  SetExtraFKModelAt (FBModelMarker *pModel, int pIndex)
  Set the specified extra FK model for a specified Extra FK Index (ex.
void  ExtractOffsets ()
  Extract Transforms Of Extra Bones for character stance pose information.
void  GetTransformOffset (FBVector3d &pT, FBRVector &pR, FBSVector &pS, int pIndex)
  Get the transform of the Given Extra Bone Index.
void  SetTransformOffset (FBVector3d &pT, FBRVector &pR, FBSVector &pS, int pIndex)
  Set the transform of the Given Extra Bone Index.
void  GetParentRotationOffset (FBRVector &pR, int pIndex)
  Get the Parent Rotation Offset of the Given Extra Bone Index.
void  SetParentRotationOffset (FBRVector &pR, int pIndex)
  Set the Parent Rotation Offset of the Given Extra Bone Index.
virtual void  CharacterPasteState (FBCharacter *pFromCharacter, FBCharacterPose *pPose, FBCharacterPoseOptions &pCharacterPoseOptions)
  Paste the state of a character on another one.
virtual void  ResetExtraProperties ()
  Support for resetting properties that are defined and specific to custom solver Override this function in derived class so that these 'extra' properties can be reset (e.g., to default values) when "Reset All Properties" button in "Character Settings" tab in Navigator is clicked, or when FBCharacter::ResetProperties() is called.
bool  GetRigAlign ()
  Returns true when control rig has Rig Align property on.
bool  GetDoubleSolve ()
  Returns true when control rig has Double Solve property on.
virtual void  ActiveChanged ()
  Notification for Activation Status Change.
virtual void  RemoveAllAnimationNodes ()
  Remove animation nodes.
virtual void  SetupAllAnimationNodes ()
  Setup animation nodes.
virtual void  SnapSuggested ()
  Suggest 'snap'.
virtual void  FreezeSuggested ()
  Suggest 'freeze'.
virtual bool  Disable (FBModel *pModel)
  Disable constraint on pModel.
virtual bool  Enable (FBModel *pModel)
  Enable constraint on pModel.
virtual bool  AnimationNodeNotify (FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo, FBConstraintInfo *pConstraintInfo)
  Notification callback for connectors.
virtual bool  AnimationNodeNotify (FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo)
  Notification function for animation thread.
virtual void  SaveModelState (FBModel *pModel, bool pS, bool pR, bool pT)
  Save current state of pModel.
virtual void  RestoreModelState (FBModel *pModel)
  Restore the saved model state onto pModel.
virtual void  FreezeSRT (FBModel *pModel, bool pS, bool pR, bool pT)
  Freeze current model state.
virtual FBConstraint Clone ()
  Clone the constraint.
int  ReferenceGroupGetCount ()
  Return the number of reference groups.
int  ReferenceGroupAdd (const char *pGroupName, int pMaxItemCount)
  Add a group of references.
const char *  ReferenceGroupGetName (int pGroupIndex)
  Get the name of the reference group.
int  ReferenceGroupGetMaxCount (int pGroupIndex)
  Get the maximum number of items that can exist in the reference group in question.
FBModel ReferenceGet (int pGroupIndex, int pItemIndex=0)
  Get a reference.
int  ReferenceGetCount (int pGroupIndex)
  Get number of references in a specified group.
bool  ReferenceAdd (int pGroupIndex, FBModel *pModel)
  Add a reference to a specified group.
bool  ReferenceRemove (int pGroupIndex, FBModel *pModel)
  Remove a reference to pModel from the group at pGroupIndex.
void  ReferenceRemoveAll ()
  Remove All References.
virtual bool  DeformerPreNotify (FBModel *pModel, FBEvaluateInfo *pEvaluateInfo, FBVertex *pBBoxMin, FBVertex *pBBoxMax)
  Deformation pre-notification function This function pass the evaluation information for deformation (if timing is required).
virtual bool  DeformerNotify (FBModel *pModel, const FBVertex *pSrcVertex, const FBVertex *pSrcNormal, int pCount, FBVertex *pDstVertex, FBVertex *pDstNormal)
  Deformation notification function.
virtual bool  EvaluateAnimationNodes (FBEvaluateInfo *pEvaluateInfo)
  Evaluation of non TRS nodes that needs to be evaluated.
virtual bool  AnimationNodeDestroy (FBAnimationNode *pAnimationNode)
  Destroy an animation node.
virtual bool  AnimationNodeIsUserData (FBAnimationNode *pAnimationNode)
  Is the animation node user data?
virtual void  AnimationNodesOutDisableIfNotWritten (FBEvaluateInfo *pEvaluateInfo)
  This call will disable all out animation nodes from being pull by system (animation thread) for given pEvaluateInfo.
virtual const char *  FbxGetObjectSubType ()
  returns UniqueName if not overloaded.
virtual const char *  FbxGetObjectType ()
  Object Type "Box".
virtual bool  FBCreate ()
  Open Reality Creation function.
virtual void  FBDestroy ()
  Open Reality destruction function.
virtual void  FBDelete () override
  Open Reality deletion function.
virtual bool  SetHIObject (HIObject pObject, bool pSDKComponent) override
  Assign component to an internal pointer.
virtual int  PropertyAdd (FBProperty *pProperty)
  Add a property to the component's property manager.
bool  PropertyAddReferenceProperty (FBProperty *pReferenceProperty)
  Add a reference property to the component's property manager.
void  PropertyRemove (FBProperty *pProperty)
  Remove a Property from the component's Property manager.
void  PropertyGetModifiedList (FBArrayTemplate< FBProperty * > &pPropList, FBPlugModificationFlag pModificationFlags)
  Get list of properties which have been modified since last loading.
FBProperty PropertyCreate (const char *pName, FBPropertyType pType, const char *pDataType, bool pAnimatable, bool pIsUser=false, FBProperty *pReferenceSource=NULL)
  Create user or dynamic property.
FBObjectFlag  GetObjectFlags ()
  Get all Object Flags (concatenated).
void  SetObjectFlags (FBObjectFlag pFlags)
  SetObjectFlags.
bool  HasObjectFlags (FBObjectFlag pFlags)
  Check whether a specific object flag is enabled.
void  EnableObjectFlags (FBObjectFlag pFlags)
  Enable a specific Object Flags.
void  DisableObjectFlags (FBObjectFlag pFlags)
  Disable a specific Object Flags.
void  SetObjectStatus (FBObjectStatus pStatus, bool pValue)
  Enable/Disable a specific Object Status.
bool  GetObjectStatus (FBObjectStatus pStatus)
  Check to see if an object status is enabled.
bool  ProcessNamespaceHierarchy (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true)
  ProcessNamespaceHierarchy.
bool  ProcessObjectNamespace (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true)
  ProcessObjectNamespace.
virtual const char *  ClassName () override
  Get the class name.
virtual bool  UseCustomPropertyViewSet () const
  Use the custom property viewSet or not.
const char *  GetFullName (void)
  Get the full name.
void  SetOwnerNamespace (FBNamespace *pOwnerNSObj)
  Set the owner Namespace object.
FBNamespace GetOwnerNamespace (void)
  Get the owner Namespace object.
FBFileReference GetOwnerFileReference (void)
  Get the owner FileReference object.
void  HardSelect ()
  HardSelect.
  ICallback_Declare (K_IMPLEMENTATION)
virtual bool  Is (int pTypeId)
  Returns true if object is of type TypeId.
virtual int  GetTypeId ()
  GetTypeId( int pTypeId )
void  KObjectEvent (HIRegister pView, HKEventBase pEvent)
virtual HIObject  GetHIObject () const
  Return an internal pointer.
bool  IsSDKComponent ()
  Return whether or not item is an SDK component.
bool  ConnectSrc (FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone)
  Add a source connection.
bool  ConnectDst (FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone)
  Add a destination connection.
bool  ConnectSrcAt (int pDst_SrcIndex, FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone)
  Add a source connection.
bool  ConnectDstAt (int pSrc_DstIndex, FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone)
  Add a destination connection.
bool  DisconnectDst (FBPlug *pDst)
  Remove a destination connection.
bool  DisconnectSrc (FBPlug *pSrc)
  Remove a source connection.
void  DisconnectAllSrc ()
  Remove all source connections.
void  DisconnectAllDst ()
  Remove all destination connections.
bool  DisconnectDstAt (int pIndex)
  Remove a destination connection at a specified index.
bool  DisconnectSrcAt (int pIndex)
  Remove a source connection at a specified index.
bool  ReplaceDstAt (int pIndex, FBPlug *pDst)
  Replace a destination connection at a specified index.
bool  ReplaceSrcAt (int pIndex, FBPlug *pSrc)
  Replace a source connection at a specified index.
bool  SwapSrc (int pIndexA, int pIndexB)
  Swap source connection at index A with source connection at index B.
bool  MoveSrcAt (int pIndex, int pAtIndex)
  Move source connection at pIndex to pAtIndex.
bool  MoveSrcAt (FBPlug *pSrc, FBPlug *pAtSrc)
  Move source connection pSrc to the position of pAtSrc.
int  GetSrcCount ()
  Get source connection count.
FBPlug GetSrc (int pIndex)
  Get a source connection's plug at specified index.
FBConnectionType  GetSrcType (int pIndex)
  Get a source connection's type at specified index.
int  GetDstCount ()
  Get destination connection count.
FBPlug GetDst (int pIndex)
  Get a destination connection's plug at specified index.
FBConnectionType  GetDstType (int pIndex)
  Get a destination connection's type at specified index.
bool  BeginChange ()
  Begins a change on multiple plugs.
void  EndChange ()
  Ends a change on multiple plugs.
void  SetSelfModified (FBPlugModificationFlag pFlag, bool pBool)
  Set the plug's self modification flag.
bool  GetSelfModified (FBPlugModificationFlag pFlag)
  Tell if the plug's self has changed.
void  SetContentModified (FBPlugModificationFlag pFlag, bool pBool)
  Set the plug's owned property/object's modification flag.
bool  GetContentModified (FBPlugModificationFlag pFlag)
  Tell if the plug's content has changed.
int  GetPlugConnectionModifiedList (FBPlugList &pPlugList, FBPlugModificationFlag pConnectionModificatonFlag, bool pAddRemove)
  Get plug's modified src/dst property/object connection added/removed List.
bool  RevertModification (FBPlugModificationFlag pFlag=kFBAllModifiedMask)
  Revert the plug's modification to original status.
void  SetStatusFlag (FBPlugStatusFlag pStatus, bool pValue)
  Set the plug's status flag.
bool  GetStatusFlag (FBPlugStatusFlag pStatus) const
  Tell if the plug's status has changed.
FBPlug GetOwner ()
  Get the owner of this plug.
FBPlug GetOwned (int pIndex)
  Get the owned plug at specified index.
int  GetOwnedCount ()
  Get the owned plug count.
virtual bool  PlugDataNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=NULL, void *pDataOld=NULL, int pDataSize=0)
  PlugDataNotify when overloaded is equivalent of FBSystem.OnConnectionDataNotify but in the context of the derived object only.
virtual bool  PlugStateNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=NULL, void *pDataOld=NULL, int pDataSize=0)
  PlugStateNotify when overloaded is equivalent of FBSystem.OnConnectionStateNotify but in the context of the derived object only.
virtual bool  PlugNotify (FBConnectionAction pAction, FBPlug *pThis, int pIndex, FBPlug *pPlug=NULL, FBConnectionType pConnectionType=kFBConnectionTypeNone, FBPlug *pNewPlug=NULL)
  PlugNotify when overloaded is equivalent of FBSystem.OnConnectionNotify but in the context of the derived object only.
FBScriptWrapper GetWrapper ()
  Return the wrapper interface of this FBObject.
void  AddWrapper (FBScriptWrapper *)
void  RemoveWrapper (FBScriptWrapper *)
FBAnimationNode AnimationNodeOutCreate (kReference pUserId, FBModel *pModel, const char *pAttribute)
  Animation Node Creations (IN/OUT).
FBAnimationNode AnimationNodeInCreate (kReference pUserId, FBModel *pModel, const char *pAttribute)
FBAnimationNode AnimationNodeInCreate (kReference pUserId, FBProperty *pProperty)
  Animation Node Creations (IN).
virtual FBAnimationNode AnimationNodeOutCreate (kReference pUserId, const char *pName, const char *pDataType, bool pIsPublic=false, double *pMin=NULL, double *pMax=NULL, bool pUserData=false)
virtual FBAnimationNode AnimationNodeInCreate (kReference pUserId, const char *pName, const char *pDataType, bool pIsPublic=false, double *pMin=NULL, double *pMax=NULL, bool pUserData=false)
  Creation of IN/OUT Animation Nodes.
virtual bool  ReferenceAddNotify (int pGroupIndex, FBModel *pModel)
  Notification callbacks for when a reference is added or removed.
virtual bool  ReferenceRemoveNotify (int pGroupIndex, FBModel *pModel)
virtual bool  DeformerBind (FBModel *pModel)
  Bind/Unbind pModel to deformation constraint.
virtual bool  DeformerUnBind (FBModel *pModel)
virtual bool  FbxStore (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat)
  Store/Retrieve data to/from FBX files.
virtual bool  FbxRetrieve (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat)
virtual FBAnimationNode AnimationNodeInGet ()
  Get the (IN/OUT) animation node for this box.
virtual FBAnimationNode AnimationNodeOutGet ()
void *  operator new (size_t stAllocateBlock)
void *  operator new (size_t stAllocateBlock, int blockType, const char *filename, int linenumber)
void  operator delete (void *pvMem)
void  RegisterPropertyEvent (FBPropertyEvent *pPropertyEvent)
void  UnregisterPropertyEvent (FBPropertyEvent *pPropertyEvent)
void  InvalidatePropertyEventsParents ()

Static Public Member Functions

static int  GetInternalClassId ()
static void  FBComponentSetName (FBComponent *pObject, const char *pName)
static const char *  FBComponentGetName (FBComponent *pObject)
static void  FBComponentSetLongName (FBComponent *pObject, const char *pName)
static const char *  FBComponentGetLongName (FBComponent *pObject)
static void  PrintClassDefinitions ()
  Print out internal Class (ID) Definition table.

Public Attributes

int  mEvaluationId
  Last Evaluation Id.
FBPropertyCharacter  TargetCharacter
  Read Write Property: The character being constrained.
FBPropertyComponent  Source
  Read Write Property: Source character when doing a character retarget.
FBPropertyBool  Deformer
  Read Write Property: Is a deformer constraint?
FBPropertyBool  HasLayout
  Read Write Property: Does the constraint have a layout?
FBPropertyString  Description
  Read Write Property: Long description of constraint.
FBPropertyBool  Active
  Read Write Property: Active state.
FBPropertyBool  Lock
  Read Write Property: Lock state.
FBPropertyAction  Snap
  Function Property: Snap constraint.
FBPropertyAnimatableDouble  Weight
  Read Write Property: Weight of constraint.
const char *  UniqueName
  internal Unique name.
FBPropertyBool  Animatable
  Read Write Property: Is the box animatable.
FBPropertyBool  Live
  Read Write Property: Is live?
FBPropertyBool  RecordMode
  Read Write Property: Is recording?
DataFBComponent *  mLocalPtr
  Handle on DataFBComponent.
FBPropertyManager  PropertyList
  Read Only Property: Manages all of the properties for the component.
FBPropertyListComponent  Components
  List: List of components.
FBPropertyListComponent  Parents
  List: Parents.
FBPropertyBool  Selected
  Read Write Property: Selected property.
FBPropertyString  Name
  Read Write Property: Unique name of object.
FBPropertyString  LongName
  Read Write Property: Name and namespace for object.
FBPropertyFolder  Folder
  Read Write Property: The folder that contain this component.
KObject *  mDummyObject
  Internal Dummy Object for non KObject Components.
bool  mAllocated
  Contain the Allocation State of the Component.

Static Public Attributes

static int  TypeInfo
  Contains the Type information of the object.
static const char *  ClassGroupName
  ClassGroupName of the object.

Protected Attributes

FBString  mName
  Name of the component.
HIObject  mObject
  Handle on the Plug.
bool  mSDKComponent
  bool Plug is an SDK component.

Static Protected Attributes

static int  mGlobalTypeInfo
  Represente the Type Index.

Friends

K_DLLIMPORT friend int  __FBRegisterTypeInfo (int pInternalClassId)
  __FBRegisterTypeInfo For internal use only, Register the TypeInfo mapped to internal class id.

Constructor & Destructor Documentation

FBCharacterSolver::FBCharacterSolver ( const char *  pName,
HIObject  pObject = NULL 
)

Constructor.

Parameters:
pName Name of constraint.
pObject For internal use only (default is NULL).

Member Function Documentation

FBCharacterSolver::IObject_Declare ( K_IMPLEMENTATION  )
FBEvaluateInfo* FBCharacterSolver::BackgroundEvaluateInfoBegin ( FBEvaluateInfo pSourceEvaluateInfo,
bool  pEvaluateCandidates = false 
)

Start background evaluation.

Needs to be released as soon as possible.

Parameters:
pSourceEvaluateInfo Source evaluation. Needs to be valid one.
pEvaluateCandidates Notify that we want to be able to resolve candidates - this can be called only from main thread (on other threads won't work)
Returns:
Background evaluation info that will work with new ID and in secured buffers.
Note:
Example of usage can be found in /OpenRealitySDK/Samples/constraints/CharacterSolver/HIK2014Solver
FBEvaluateInfo* FBCharacterSolver::BackgroundEvaluateInfoRecursiveBegin ( FBEvaluateInfo pSourceEvaluateInfo,
bool  pForceUpdateLocals = false 
)

Start recursive background evaluation.

Needs to be released as soon as possible.

Parameters:
pSourceEvaluateInfo Source evaluation. Needs to be valid one.
pForceUpdateLocals Evaluate local transformation, even if only global was requested
Returns:
Background evaluation info that will work with new ID and in secured buffers.
Note:
Example of usage can be found in /OpenRealitySDK/Samples/constraints/CharacterSolver/HIK2014Solver
void FBCharacterSolver::BackgroundEvaluateInfoEnd ( FBEvaluateInfo pBackgroundEvaluateInfo )

Release background evaluation info - very important.

bool FBCharacterSolver::BackgroundEvaluateInfoNotify ( FBEvaluateInfo pBackgroundEvaluateInfo,
kBackgroundEvaluationCallback  pFunction,
void *  pCustomData = NULL 
)

Enable evaluation notification.

Parameters:
pBackgroundEvaluateInfo Background evaluation that was started for this object and for which we want to change enable/disable notification callback
pFunction Callback function, will be called when FBAnimationNode of this constraint is being evaluated. Passing NULL disable notification.
pCustomData Customer can pass custom data to callback.
Returns:
Confirms that change was made to pBackgroundEvaluateInfo
Note:
Example of usage can be found in /OpenRealitySDK/Samples/constraints/CharacterSolver/IK2014Solver
void FBCharacterSolver::ResetConnectorSetup ( )
virtual FBCharacterManipulatorCtrlSet* FBCharacterSolver::CreateCharacterManipulatorCtrlSet ( const char *  pName ) [virtual]
virtual double FBCharacterSolver::GetCharacterSolverVersion ( ) [inline, virtual]

Version of the solver. Needs to be overloaded in derived class.

Definition at line 166 of file fbcharactersolver.h.

{ return 1.0; };
virtual int FBCharacterSolver::GetExtraFKCount ( ) [inline, virtual]

Return number of extra FK model (ex.

extra shoulder)

Returns:
number of extra FK.

Definition at line 171 of file fbcharactersolver.h.

{ return 0; }
virtual const char* FBCharacterSolver::GetExtraFKNameAt ( int  pIndex ) [inline, virtual]

Return the specified extra FK Name (ex.

extra shoulder)

Parameters:
pIndex Index of extra FK to get.
Returns:
Name corresponding to FK index.

Definition at line 176 of file fbcharactersolver.h.

{ return NULL; }
virtual FBBodyPartId FBCharacterSolver::GetExtraFKBodyPartAt ( int  pIndex ) [inline, virtual]

Return The specified extra FK BodyPart (ex.

Left Arm )

Parameters:
pIndex Index of extra Bone to get.
Returns:
BodyPart associated with this model.

Definition at line 181 of file fbcharactersolver.h.

{ return kFBCtrlSetPartNone; }
virtual int FBCharacterSolver::GetExtraBoneCount ( ) [inline, virtual]

Return number of extra Bone model (ex.

extra shoulder)

Returns:
number of extra Bone.

Definition at line 185 of file fbcharactersolver.h.

{ return 0; }
virtual const char* FBCharacterSolver::GetExtraBoneNameAt ( int  pIndex ) [inline, virtual]

Return The specified extra Bone name (ex.

extra shoulder)

Parameters:
pIndex Index of extra Bone to get.
Returns:
Name corresponding to Bone index.

Definition at line 190 of file fbcharactersolver.h.

{ return NULL; }
virtual FBBodyPartId FBCharacterSolver::GetExtraBoneBodyPartAt ( int  pIndex ) [inline, virtual]

Return The specified extra Bone BodyPart (ex.

Left Arm )

Parameters:
pIndex Index of extra Bone to get.
Returns:
BodyPart associated with this model.

Definition at line 195 of file fbcharactersolver.h.

{ return kFBCtrlSetPartNone; }
FBModel* FBCharacterSolver::GetExtraBoneModelAt ( int  pIndex )

Return The specified extra Bone model (ex.

extra shoulder)

Parameters:
pIndex Index of extra Bone to get.
Returns:
FBModel corresponding to Bone index.
FBModelMarker* FBCharacterSolver::GetExtraFKModelAt ( int  pIndex )

Return the specified extra FK model (ex.

extra shoulder)

Parameters:
pIndex Index of extra FK to get.
Returns:
FBModel corresponding to FK index.
void FBCharacterSolver::SetExtraBoneModelAt ( FBModel pModel,
int  pIndex 
)

Set the specified extra Bone model for a specified Extra Bone Index.

(ex. extra shoulder)

Parameters:
pModel Extra Bone Model used for characterization.
pIndex Index of extra Bone to set.
void FBCharacterSolver::SetExtraFKModelAt ( FBModelMarker pModel,
int  pIndex 
)

Set the specified extra FK model for a specified Extra FK Index (ex.

extra shoulder)

Parameters:
pModel Extra FK Model used for character Rig
pIndex Index of extra FK to set.
void FBCharacterSolver::ExtractOffsets ( )

Extract Transforms Of Extra Bones for character stance pose information.

void FBCharacterSolver::GetTransformOffset ( FBVector3d pT,
FBRVector pR,
FBSVector pS,
int  pIndex 
)

Get the transform of the Given Extra Bone Index.

The transorm is the Global Transform extracted at Characterisation (in Stance Pose)

Parameters:
pT return Global Translation in Stance Pose.
pR return Global Rotation in Stance Pose.
pS return Global Scaling in Stance Pose.
pIndex Index of extra Bone to get.
void FBCharacterSolver::SetTransformOffset ( FBVector3d pT,
FBRVector pR,
FBSVector pS,
int  pIndex 
)

Set the transform of the Given Extra Bone Index.

The transorm is the Global Transform extracted at Characterisation (in Stance Pose)

Parameters:
pT Global Translation to set for the Stance Pose.
pR Global Rotation to set for the Stance Pose.
pS Global Scaling to set for the Stance Pose.
pIndex Index of extra Bone to set.
void FBCharacterSolver::GetParentRotationOffset ( FBRVector pR,
int  pIndex 
)

Get the Parent Rotation Offset of the Given Extra Bone Index.

The rotation Offset if extracted at Characterisation (in Stance Pose). You don't need this value if the parent of the bone is characterized too.

Parameters:
pR Offset Rotation between the Bone and is parent at Stance Pose.
pIndex Index of extra Bone to get.
void FBCharacterSolver::SetParentRotationOffset ( FBRVector pR,
int  pIndex 
)

Set the Parent Rotation Offset of the Given Extra Bone Index.

The rotation Offset if extracted at Characterisation (in Stance Pose). You don't need this value if the parent of the bone is characterized too.

Parameters:
pR Offset Rotation between the Bone and is parent at Stance Pose.
pIndex Index of extra Bone to get.
virtual void FBCharacterSolver::CharacterPasteState ( FBCharacter pFromCharacter,
FBCharacterPose pPose,
FBCharacterPoseOptions pCharacterPoseOptions 
) [inline, virtual]

Paste the state of a character on another one.

Parameters:
pFromCharacter Character with the state that we want to paste.
pPose Pose object containing the pose.
pCharacterPoseOptions Pose options to use with this paste.

Definition at line 260 of file fbcharactersolver.h.

{}
virtual void FBCharacterSolver::ResetExtraProperties ( ) [inline, virtual]

Support for resetting properties that are defined and specific to custom solver Override this function in derived class so that these 'extra' properties can be reset (e.g., to default values) when "Reset All Properties" button in "Character Settings" tab in Navigator is clicked, or when FBCharacter::ResetProperties() is called.

Definition at line 266 of file fbcharactersolver.h.

{};
bool FBCharacterSolver::GetRigAlign ( )

Returns true when control rig has Rig Align property on.

bool FBCharacterSolver::GetDoubleSolve ( )

Returns true when control rig has Double Solve property on.

virtual void FBConstraint::ActiveChanged ( ) [virtual, inherited]

Notification for Activation Status Change.

virtual void FBConstraint::RemoveAllAnimationNodes ( ) [virtual, inherited]

Remove animation nodes.

virtual void FBConstraint::SetupAllAnimationNodes ( ) [virtual, inherited]

Setup animation nodes.

virtual void FBConstraint::SnapSuggested ( ) [virtual, inherited]

Suggest 'snap'.

virtual void FBConstraint::FreezeSuggested ( ) [virtual, inherited]

Suggest 'freeze'.

virtual bool FBConstraint::Disable ( FBModel pModel ) [virtual, inherited]

Disable constraint on pModel.

Parameters:
pModel Model on which constraint should be disabled.
Returns:
true if successful.
virtual bool FBConstraint::Enable ( FBModel pModel ) [virtual, inherited]

Enable constraint on pModel.

Parameters:
pModel Model on which constraint should be enable.
Returns:
true if successful.
virtual bool FBConstraint::AnimationNodeNotify ( FBAnimationNode pAnimationNode,
FBEvaluateInfo pEvaluateInfo,
FBConstraintInfo pConstraintInfo 
) [virtual, inherited]

Notification callback for connectors.

Parameters:
pAnimationNode Animation node being notified.
pEvaluateInfo Information for evaluation.
pConstraintInfo Information for constraint.
Returns:
true if successful.
virtual bool FBBox::AnimationNodeNotify ( FBAnimationNode pAnimationNode,
FBEvaluateInfo pEvaluateInfo 
) [virtual, inherited]

Notification function for animation thread.

This function is called by the real-time engine in order to process animation information.

Parameters:
pAnimationNode Node containing the modified information.
pEvaluateInfo Information concerning the evaluation of the animation (time, etc.)
Returns:
true if animation node notification is successful.

Reimplemented in FBDevice, FBDeviceOptical, and FBDeviceSync.

FBAnimationNode* FBConstraint::AnimationNodeOutCreate ( kReference  pUserId,
FBModel pModel,
const char *  pAttribute 
) [inherited]

Animation Node Creations (IN/OUT).

Used to create the connectors (in or out) on an animation node. This function will return a newly created animation node, connected to the model specified by pModel.

Parameters:
pUserId User specified reference number.
pModel Model to associate with animation node.
pAttribute Attribute of model to animate (i.e. Translation, Lcl Translation, etc.)
Returns:
Newly created IN/OUT animation node.
virtual FBAnimationNode* FBBox::AnimationNodeOutCreate ( kReference  pUserId,
const char *  pName,
const char *  pDataType,
bool  pIsPublic = false,
double *  pMin = NULL,
double *  pMax = NULL,
bool  pUserData = false 
) [virtual, inherited]
FBAnimationNode* FBConstraint::AnimationNodeInCreate ( kReference  pUserId,
FBModel pModel,
const char *  pAttribute 
) [inherited]
FBAnimationNode* FBConstraint::AnimationNodeInCreate ( kReference  pUserId,
FBProperty pProperty 
) [inherited]

Animation Node Creations (IN).

Used to create the In connectors on an animation node. This function will return a newly created animation node, connected to the model specified by pProperty.

Parameters:
pUserId User specified reference number.
pProperty Property of model to animate (must be animatable)
Returns:
Newly created IN animation node.
virtual FBAnimationNode* FBBox::AnimationNodeInCreate ( kReference  pUserId,
const char *  pName,
const char *  pDataType,
bool  pIsPublic = false,
double *  pMin = NULL,
double *  pMax = NULL,
bool  pUserData = false 
) [virtual, inherited]

Creation of IN/OUT Animation Nodes.

Parameters:
pUserId User-defined reference number.
pName Name of animation node.
pDataType Type of data being animated.
pIsPublic Determine if the animation node is published, that means whether to show it in property editor and have input / output in relation constraints editor (default is false).
pMin Minimum values for data (default is NULL).
pMax Maximum values for data (default is NULL).
pUserData Is this user data? False means the property is NOT animated, user cannot change the data. Especially for device, it doesn't make sense to make it animated, unless you want to record the device data. (default is false).
Returns:
A handle to the newly created animation node.

Reimplemented in FBDevice.

virtual void FBConstraint::SaveModelState ( FBModel pModel,
bool  pS,
bool  pR,
bool  pT 
) [virtual, inherited]

Save current state of pModel.

Parameters:
pModel Model to save.
pS Scaling information?
pR Rotation information?
pT Translation information?
virtual void FBConstraint::RestoreModelState ( FBModel pModel ) [virtual, inherited]

Restore the saved model state onto pModel.

Parameters:
pModel Model to affect with previous state.
virtual void FBConstraint::FreezeSRT ( FBModel pModel,
bool  pS,
bool  pR,
bool  pT 
) [virtual, inherited]

Freeze current model state.

Parameters:
pModel Model to freeze constraint on.
pS Scaling freeze?
pR Rotation freeze?
pT Translation freeze?
virtual FBConstraint* FBConstraint::Clone ( ) [virtual, inherited]

Clone the constraint.

Returns:
Newly created (and copied) constraint.

Reimplemented in FBCharacter.

int FBConstraint::ReferenceGroupGetCount ( ) [inherited]

Return the number of reference groups.

Returns:
Number of reference groups.
int FBConstraint::ReferenceGroupAdd ( const char *  pGroupName,
int  pMaxItemCount 
) [inherited]

Add a group of references.

Parameters:
pGroupName Name of reference group to add.
pMaxItemCount Maximum number of items in pGroupName.
Returns:
Index of new reference group.
const char* FBConstraint::ReferenceGroupGetName ( int  pGroupIndex ) [inherited]

Get the name of the reference group.

Parameters:
pGroupIndex Index of the reference group to get the name for.
Returns:
The name of the reference group pGroupIndex.
int FBConstraint::ReferenceGroupGetMaxCount ( int  pGroupIndex ) [inherited]

Get the maximum number of items that can exist in the reference group in question.

Parameters:
pGroupIndex Index of reference group.
Returns:
Maximum number of items that can be added to the reference group.
FBModel* FBConstraint::ReferenceGet ( int  pGroupIndex,
int  pItemIndex = 0 
) [inherited]

Get a reference.

Parameters:
pGroupIndex Index of reference group containing desired reference.
pItemIndex Index of reference in group to get (default is 0).
Returns:
Model at specified reference.
int FBConstraint::ReferenceGetCount ( int  pGroupIndex ) [inherited]

Get number of references in a specified group.

Parameters:
pGroupIndex Index of group to query the number of references.
Returns:
Number of references in specified group.
bool FBConstraint::ReferenceAdd ( int  pGroupIndex,
FBModel pModel 
) [inherited]

Add a reference to a specified group.

Parameters:
pGroupIndex Group to add reference to.
pModel Model to place at new reference.
Returns:
true if successful.
Warning:
If you try to add a model to a group that is already full, the success of the operation will be false and the reference will not be added.
bool FBConstraint::ReferenceRemove ( int  pGroupIndex,
FBModel pModel 
) [inherited]

Remove a reference to pModel from the group at pGroupIndex.

Parameters:
pGroupIndex Index to remove reference from.
pModel Model to remove reference from.
Returns:
true if successful.
void FBConstraint::ReferenceRemoveAll ( ) [inherited]

Remove All References.

virtual bool FBConstraint::ReferenceAddNotify ( int  pGroupIndex,
FBModel pModel 
) [virtual, inherited]

Notification callbacks for when a reference is added or removed.

Parameters:
pGroupIndex Index of group where reference was affected.
pModel Model to which reference was associated.
Returns:
true if successful.
virtual bool FBConstraint::ReferenceRemoveNotify ( int  pGroupIndex,
FBModel pModel 
) [virtual, inherited]
virtual bool FBConstraint::DeformerPreNotify ( FBModel pModel,
FBEvaluateInfo pEvaluateInfo,
FBVertex pBBoxMin,
FBVertex pBBoxMax 
) [virtual, inherited]

Deformation pre-notification function This function pass the evaluation information for deformation (if timing is required).

And user should provide the estimation of the bounding volume of the model after deformation. This estimation will be used to determine the model's visibility in the camera's frustum. Only those potential visible models will receive the following DeformerNotify() callback.

Parameters:
pModel Model to deform.
pEvaluateInfo Information for evaluation.
pBBoxMin (In/Out) The estimation of min vertex of the bounding box before & after deformation
pBBoxMax (In/Out) The estimation of max vertex of the bounding box before & after deformation
Returns:
true if the deformer provide valid bbox estimation and wish reduce the following deformation if possible, false if deformer wish to continue deformation without considering frustum visibility.
virtual bool FBConstraint::DeformerNotify ( FBModel pModel,
const FBVertex pSrcVertex,
const FBVertex pSrcNormal,
int  pCount,
FBVertex pDstVertex,
FBVertex pDstNormal 
) [virtual, inherited]

Deformation notification function.

Parameters:
pModel Model to deform.
pSrcVertex Source vertex array (i.e. vertex to deform).
pSrcNormal Normals at source vertex array.
pCount Number of vertices in source/destination arrays
pDstVertex Destination vertex array (i.e. where source vertex gets deformed to)
pDstNormal Normals at destination vertex array.
Returns:
true if successful.
virtual bool FBConstraint::DeformerBind ( FBModel pModel ) [virtual, inherited]

Bind/Unbind pModel to deformation constraint.

These functions are used for adding/removing a deformation binding to/from pModel if the constraint is a deformation constraint.

Parameters:
pModel Model to bind/unbind.
Returns:
true if successful.
virtual bool FBConstraint::DeformerUnBind ( FBModel pModel ) [virtual, inherited]
virtual bool FBConstraint::FbxStore ( FBFbxObject pFbxObject,
kFbxObjectStore  pStoreWhat 
) [virtual, inherited]

Store/Retrieve data to/from FBX files.

Parameters:
pFbxObject Interface to FBX format.
pStoreWhat Attributes to store in FBX file.
Returns:
true if successful.

Reimplemented from FBBox.

virtual bool FBConstraint::FbxRetrieve ( FBFbxObject pFbxObject,
kFbxObjectStore  pStoreWhat 
) [virtual, inherited]

Reimplemented from FBBox.

virtual bool FBBox::EvaluateAnimationNodes ( FBEvaluateInfo pEvaluateInfo ) [virtual, inherited]

Evaluation of non TRS nodes that needs to be evaluated.

This function is called by the real-time engine in order to process animation information.

Parameters:
pEvaluateInfo Information concerning the evaluation of the animation (time, etc.)
Returns:
true if animation node notification is successful.
virtual bool FBBox::AnimationNodeDestroy ( FBAnimationNode pAnimationNode ) [virtual, inherited]

Destroy an animation node.

Parameters:
pAnimationNode Handle to the animation node to be destroyed.
Returns:
true if destruction was successful.
virtual bool FBBox::AnimationNodeIsUserData ( FBAnimationNode pAnimationNode ) [virtual, inherited]

Is the animation node user data?

Parameters:
pAnimationNode Handle to the animation to be queried.
Returns:
true if node is user data.
virtual void FBBox::AnimationNodesOutDisableIfNotWritten ( FBEvaluateInfo pEvaluateInfo ) [virtual, inherited]

This call will disable all out animation nodes from being pull by system (animation thread) for given pEvaluateInfo.

Parameters:
pEvaluateInfo Evaluation synchronization object (contains evaluation id).
Note:
This can be also done per individual AnimationNode -> FBAnimationNode::DisableIfNotWritten
virtual FBAnimationNode* FBBox::AnimationNodeInGet ( ) [virtual, inherited]

Get the (IN/OUT) animation node for this box.

Returns:
A handle to the animation node for this box.
virtual FBAnimationNode* FBBox::AnimationNodeOutGet ( ) [virtual, inherited]
virtual const char* FBBox::FbxGetObjectSubType ( ) [virtual, inherited]

returns UniqueName if not overloaded.

Reimplemented in FBMaterial, FBModel, FBModelNull, and FBModelMarker.

virtual const char* FBBox::FbxGetObjectType ( ) [virtual, inherited]

Object Type "Box".

Reimplemented in FBDevice, FBMaterial, FBModel, FBModelNull, and FBModelMarker.

FBComponent::GetInternalClassId ( ) [static, inherited]
Returns:
Internal class Id

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

virtual bool FBComponent::FBCreate ( ) [virtual, inherited]
virtual void FBComponent::FBDestroy ( ) [virtual, inherited]
virtual bool FBComponent::SetHIObject ( HIObject  pObject,
bool  pSDKComponent 
) [override, virtual, inherited]

Assign component to an internal pointer.

Reimplemented from FBPlug.

virtual int FBComponent::PropertyAdd ( FBProperty pProperty ) [virtual, inherited]

Add a property to the component's property manager.

Parameters:
pProperty The property to add to the property manager.
Returns:
Index in the property array where property was inserted.
bool FBComponent::PropertyAddReferenceProperty ( FBProperty pReferenceProperty ) [inherited]

Add a reference property to the component's property manager.

Parameters:
pReferenceProperty The property to from an other object to add a reference to (property cannot be a custom ORSDK property).
Returns:
True if the reference property could be added.
void FBComponent::PropertyRemove ( FBProperty pProperty ) [inherited]

Remove a Property from the component's Property manager.

If the property was dynamically allocated, it is deleted.

Parameters:
pProperty The property to remove from the property manager.
void FBComponent::PropertyGetModifiedList ( FBArrayTemplate< FBProperty * > &  pPropList,
FBPlugModificationFlag  pModificationFlags 
) [inherited]

Get list of properties which have been modified since last loading.

Parameters:
pPropList property list to hold the modified properties.
pModificationFlags type of modification to query.
FBProperty* FBComponent::PropertyCreate ( const char *  pName,
FBPropertyType  pType,
const char *  pDataType,
bool  pAnimatable,
bool  pIsUser = false,
FBProperty pReferenceSource = NULL 
) [inherited]

Create user or dynamic property.

Parameters:
pName The name of the property.
pType Type of the property. See enum FBPropertyType.
pDataType DataType of the property.
pAnimatable To specify if the property can be animated.
pIsUser To specify if the property is available as a custom property or dynamic and attached to the object.
pReferenceSource Specifies the property that a reference refers to.
FBObjectFlag FBComponent::GetObjectFlags ( ) [inherited]

Get all Object Flags (concatenated).

Returns:
Get all object flags in one call. Flags can be concatenated.
void FBComponent::SetObjectFlags ( FBObjectFlag  pFlags ) [inherited]

SetObjectFlags.

Parameters:
pFlags Set flag values. Note: this function overwrites all flags with those passed in parameter.
bool FBComponent::HasObjectFlags ( FBObjectFlag  pFlags ) [inherited]

Check whether a specific object flag is enabled.

Parameters:
pFlags Flags to check if they are present.
Returns:
True if all flags in pFlags are enabled.
void FBComponent::EnableObjectFlags ( FBObjectFlag  pFlags ) [inherited]

Enable a specific Object Flags.

Parameters:
pFlags Flags to enable.
void FBComponent::DisableObjectFlags ( FBObjectFlag  pFlags ) [inherited]

Disable a specific Object Flags.

Parameters:
pFlags Flags to disable.
void FBComponent::SetObjectStatus ( FBObjectStatus  pStatus,
bool  pValue 
) [inherited]

Enable/Disable a specific Object Status.

Parameters:
pStatus Status to change.
pValue Value to change the status to.
bool FBComponent::GetObjectStatus ( FBObjectStatus  pStatus ) [inherited]

Check to see if an object status is enabled.

Parameters:
pStatus Status to query.
bool FBComponent::ProcessNamespaceHierarchy ( FBNamespaceAction  pNamespaceAction,
const char *  pNamespaceName,
const char *  pReplaceTo = NULL,
bool  pAddRight = true 
) [inherited]

ProcessNamespaceHierarchy.

New Namespace name should only contains alphabet, digit and '_', Can't start with digit. This recursive function goes through the whole hierarchy (children) to add/replace the prefix. If you need to work on a single object, use the ProcessObjectPrefix function.

Parameters:
pNamespaceAction Which operation to do on the hierarchy (children).
pNamespaceName The Namespace name on Add/Delete or the prefix to replace in case of replace.
pReplaceTo The new Namespace Name or NULL in case of add or delete.
pAddRight Whether to add the namespace on right-most or left-most side or other namespace.
Returns:
return true if process successful.
bool FBComponent::ProcessObjectNamespace ( FBNamespaceAction  pNamespaceAction,
const char *  pNamespaceName,
const char *  pReplaceTo = NULL,
bool  pAddRight = true 
) [inherited]

ProcessObjectNamespace.

New Namespace name should only contains alphabet, digit and '_', Can't start with digit. This function is the same as ProcessNamespaceHierarchy except that it applies only on the current object and not to the object's children.

Parameters:
pNamespaceAction Which operation to do on the hierarchy (children).
pNamespaceName The Namespace name on Add/Delete or the prefix to replace in case of replace.
pReplaceTo The new Namespace Name or NULL in case of add or delete.
pAddRight Whether to add the namespace on right-most or left-most side or other namespace.
Returns:
return true if process successful.
virtual const char* FBComponent::ClassName ( ) [override, virtual, inherited]

Get the class name.

Returns:
The class name (i.e. "FBComponent").

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

virtual bool FBComponent::UseCustomPropertyViewSet ( ) const [inline, virtual, inherited]

Use the custom property viewSet or not.

To have custom property view for custom subclass, modification bin/config/propertyview.fbx is required.

Returns:
False if to use internal corresponding object's viewSet of the parent class.

Definition at line 791 of file fbcomponent.h.

{ return true; }
const char* FBComponent::GetFullName ( void  ) [inherited]

Get the full name.

Returns:
the full name of the component.
void FBComponent::SetOwnerNamespace ( FBNamespace pOwnerNSObj ) [inherited]

Set the owner Namespace object.

FBNamespace* FBComponent::GetOwnerNamespace ( void  ) [inherited]

Get the owner Namespace object.

Returns:
the owner Namespace object
FBFileReference* FBComponent::GetOwnerFileReference ( void  ) [inherited]

Get the owner FileReference object.

Returns:
the owner FileReference object
void FBComponent::HardSelect ( ) [inherited]

HardSelect.

Selects the object, and emits a hard select event for UI update notification.

void* FBComponent::operator new ( size_t  stAllocateBlock ) [inherited]
void* FBComponent::operator new ( size_t  stAllocateBlock,
int  blockType,
const char *  filename,
int  linenumber 
) [inherited]
void FBComponent::operator delete ( void *  pvMem ) [inherited]
void FBComponent::RegisterPropertyEvent ( FBPropertyEvent pPropertyEvent ) [inherited]
void FBComponent::UnregisterPropertyEvent ( FBPropertyEvent pPropertyEvent ) [inherited]
void FBComponent::InvalidatePropertyEventsParents ( ) [inherited]
FBComponent::ICallback_Declare ( K_IMPLEMENTATION  ) [inherited]

Reimplemented from FBPlug.

Reimplemented in FBModel, and FBVisualComponent.

virtual bool FBComponent::Is ( int  pTypeId ) [virtual, inherited]

Returns true if object is of type TypeId.

Parameters:
pTypeId TypeId to compare object to.
Returns:
Result of the comparison.

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

virtual int FBComponent::GetTypeId ( ) [virtual, inherited]

GetTypeId( int pTypeId )

Returns:
The TypeInfo of the object

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

static void FBComponent::FBComponentSetName ( FBComponent pObject,
const char *  pName 
) [static, inherited]
static const char* FBComponent::FBComponentGetName ( FBComponent pObject ) [static, inherited]
static void FBComponent::FBComponentSetLongName ( FBComponent pObject,
const char *  pName 
) [static, inherited]
static const char* FBComponent::FBComponentGetLongName ( FBComponent pObject ) [static, inherited]
void FBComponent::KObjectEvent ( HIRegister  pView,
HKEventBase  pEvent 
) [inherited]
virtual HIObject FBPlug::GetHIObject ( ) const [virtual, inherited]

Return an internal pointer.

bool FBPlug::IsSDKComponent ( ) [inherited]

Return whether or not item is an SDK component.

bool FBPlug::ConnectSrc ( FBPlug pSrc,
FBConnectionType  pConnectionType = kFBConnectionTypeNone 
) [inherited]

Add a source connection.

Parameters:
pSrc Source plug.
pConnectionType Type of connection, taken from FBConnectionType. Default value should work in all cases.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::ConnectDst ( FBPlug pDst,
FBConnectionType  pConnectionType = kFBConnectionTypeNone 
) [inherited]

Add a destination connection.

Parameters:
pDst Destination plug.
pConnectionType Type of connection, taken from FBConnectionType. Default value should work in all cases.
Returns:
A boolean indicating success (True) or failure (False)
bool FBPlug::ConnectSrcAt ( int  pDst_SrcIndex,
FBPlug pSrc,
FBConnectionType  pConnectionType = kFBConnectionTypeNone 
) [inherited]

Add a source connection.

Parameters:
pDst_SrcIndex Index that tells where to add this source connection in the destination's connection list. if index is out of bound, and this source connection will be appended at the end.
pSrc Source plug.
pConnectionType Type of connection, taken from FBConnectionType. Default value should work in all cases.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::ConnectDstAt ( int  pSrc_DstIndex,
FBPlug pDst,
FBConnectionType  pConnectionType = kFBConnectionTypeNone 
) [inherited]

Add a destination connection.

Parameters:
pSrc_DstIndex Index that tells where to add this destination connection in the source's connection list. if index is out of bound, and this destination connection will be appended at the end.
pDst Destination plug.
pConnectionType Type of connection, taken from FBConnectionType. Default value should work in all cases.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::DisconnectDst ( FBPlug pDst ) [inherited]

Remove a destination connection.

Parameters:
pDst Destination plug.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::DisconnectSrc ( FBPlug pSrc ) [inherited]

Remove a source connection.

Parameters:
pSrc Source plug.
Returns:
A boolean indicating success (True) or failure (False).
void FBPlug::DisconnectAllSrc ( ) [inherited]

Remove all source connections.

void FBPlug::DisconnectAllDst ( ) [inherited]

Remove all destination connections.

bool FBPlug::DisconnectDstAt ( int  pIndex ) [inherited]

Remove a destination connection at a specified index.

Parameters:
pIndex Destination plug index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::DisconnectSrcAt ( int  pIndex ) [inherited]

Remove a source connection at a specified index.

Parameters:
pIndex Source plug index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::ReplaceDstAt ( int  pIndex,
FBPlug pDst 
) [inherited]

Replace a destination connection at a specified index.

Parameters:
pIndex Destination plug index.
pDst Plug that will replace the other at index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::ReplaceSrcAt ( int  pIndex,
FBPlug pSrc 
) [inherited]

Replace a source connection at a specified index.

Parameters:
pIndex Source plug index.
pSrc Plug that will replace the other at index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::SwapSrc ( int  pIndexA,
int  pIndexB 
) [inherited]

Swap source connection at index A with source connection at index B.

Parameters:
pIndexA Plug index.
pIndexB Other plug index.
Returns:
A boolean indicating success (True) or failure (False).
bool FBPlug::MoveSrcAt ( int  pIndex,
int  pAtIndex 
) [inherited]

Move source connection at pIndex to pAtIndex.

Parameters:
pIndex Plug current index.
pAtIndex Plug new index.
Returns:
A boolean indicating success (True) or failure (False).
Remarks:
This is not like the swap function since the connection at pAtIndex is untouched.
bool FBPlug::MoveSrcAt ( FBPlug pSrc,
FBPlug pAtSrc 
) [inherited]

Move source connection pSrc to the position of pAtSrc.

Parameters:
pSrc Plug.
pAtSrc Plug that mark where we want to insert (will insert before this one).
Returns:
A boolean indicating success (True) or failure (False).
Remarks:
This is not like the swap function since the connection at pAtSrc is untouched.
int FBPlug::GetSrcCount ( ) [inherited]

Get source connection count.

Returns:
Total sources connections count.
FBPlug* FBPlug::GetSrc ( int  pIndex ) [inherited]

Get a source connection's plug at specified index.

Parameters:
pIndex Index of the source connection's plug.
Returns:
Source plug at specified index.
FBConnectionType FBPlug::GetSrcType ( int  pIndex ) [inherited]

Get a source connection's type at specified index.

Parameters:
pIndex Index of the source connection's type.
Returns:
Source connection's type at specified index.
int FBPlug::GetDstCount ( ) [inherited]

Get destination connection count.

Returns:
Total destinations connections count.
FBPlug* FBPlug::GetDst ( int  pIndex ) [inherited]

Get a destination connection's plug at specified index.

Parameters:
pIndex Index of the destination connection's plug.
Returns:
Destination plug at specified index.
FBConnectionType FBPlug::GetDstType ( int  pIndex ) [inherited]

Get a destination connection's type at specified index.

Parameters:
pIndex Index of the destination connection's type.
Returns:
Destination connection's type at specified index.
bool FBPlug::BeginChange ( ) [inherited]

Begins a change on multiple plugs.

Returns:
A boolean indicating success (True) or failure (False).
void FBPlug::EndChange ( ) [inherited]

Ends a change on multiple plugs.

void FBPlug::SetSelfModified ( FBPlugModificationFlag  pFlag,
bool  pBool 
) [inherited]

Set the plug's self modification flag.

Parameters:
pFlag bitwise AND of self modification flags.
pBool true if self changed.
bool FBPlug::GetSelfModified ( FBPlugModificationFlag  pFlag ) [inherited]

Tell if the plug's self has changed.

Parameters:
pFlag bitwise AND of self modification flags.
Returns:
true if self changed
void FBPlug::SetContentModified ( FBPlugModificationFlag  pFlag,
bool  pBool 
) [inherited]

Set the plug's owned property/object's modification flag.

Parameters:
pFlag bitwise AND of content modification flags.
pBool true if content has modification.
bool FBPlug::GetContentModified ( FBPlugModificationFlag  pFlag ) [inherited]

Tell if the plug's content has changed.

Parameters:
pFlag bitwise AND of content modification flags.
Returns:
true if content connection changed.
int FBPlug::GetPlugConnectionModifiedList ( FBPlugList pPlugList,
FBPlugModificationFlag  pConnectionModificatonFlag,
bool  pAddRemove 
) [inherited]

Get plug's modified src/dst property/object connection added/removed List.

Parameters:
pPlugList plug list to fill up.
pConnectionModificatonFlag Src/Dst Property/Object connection modification flag.
pAddRemove Ask for the added list if true, removed list if false.
Returns:
count of list;
bool FBPlug::RevertModification ( FBPlugModificationFlag  pFlag = kFBAllModifiedMask ) [inherited]

Revert the plug's modification to original status.

Parameters:
pFlag the type of modification to be reverted.
Returns:
true if revert successfully.
void FBPlug::SetStatusFlag ( FBPlugStatusFlag  pStatus,
bool  pValue 
) [inherited]

Set the plug's status flag.

Parameters:
pStatus bitwise AND of status flags.
pValue true if status has modification.
bool FBPlug::GetStatusFlag ( FBPlugStatusFlag  pStatus ) const [inherited]

Tell if the plug's status has changed.

Parameters:
pStatus bitwise AND of self modification flags.
Returns:
true if self changed
FBPlug* FBPlug::GetOwner ( ) [inherited]

Get the owner of this plug.

Very useful for properties since they are plugs too.

Returns:
The owner of this plug.
FBPlug* FBPlug::GetOwned ( int  pIndex ) [inherited]

Get the owned plug at specified index.

Parameters:
pIndex Index of the owned plug to get.
Returns:
The owned plug at specified index.
int FBPlug::GetOwnedCount ( ) [inherited]

Get the owned plug count.

Returns:
The owned plug count.
virtual bool FBPlug::PlugDataNotify ( FBConnectionAction  pAction,
FBPlug pThis,
void *  pData = NULL,
void *  pDataOld = NULL,
int  pDataSize = 0 
) [virtual, inherited]

PlugDataNotify when overloaded is equivalent of FBSystem.OnConnectionDataNotify but in the context of the derived object only.

Parameters:
pAction Plug action, the event type.
pThis Plug concerned.
pData Current data, meaning depends of plug action.
pDataOld Previous data, meaning depends of plug action.
pDataSize Size of data.
Returns:
unused should return true
virtual bool FBPlug::PlugStateNotify ( FBConnectionAction  pAction,
FBPlug pThis,
void *  pData = NULL,
void *  pDataOld = NULL,
int  pDataSize = 0 
) [virtual, inherited]

PlugStateNotify when overloaded is equivalent of FBSystem.OnConnectionStateNotify but in the context of the derived object only.

Parameters:
pAction Plug action, the event type.
pThis Plug concerned.
pData Current data, meaning depends of plug action.
pDataOld Previous data, meaning depends of plug action.
pDataSize Size of data.
Returns:
unused should return true except in the case of property rename kFBRename
virtual bool FBPlug::PlugNotify ( FBConnectionAction  pAction,
FBPlug pThis,
int  pIndex,
FBPlug pPlug = NULL,
FBConnectionType  pConnectionType = kFBConnectionTypeNone,
FBPlug pNewPlug = NULL 
) [virtual, inherited]

PlugNotify when overloaded is equivalent of FBSystem.OnConnectionNotify but in the context of the derived object only.

Parameters:
pAction Plug action, the event type.
pThis Plug concerned.
pIndex Index of the plug.
pPlug Other plug concerned.
pConnectionType Connection type between the plugs.
pNewPlug New plug (for the replace event).
Returns:
should by default return true except in the case of connection requests (kFBRequestConnectSrc or kFBRequestConnectDst)
static void FBPlug::PrintClassDefinitions ( ) [static, inherited]

Print out internal Class (ID) Definition table.

For internal debug purpose only.

FBScriptWrapper* FBWrapperHolder::GetWrapper ( ) [inherited]

Return the wrapper interface of this FBObject.

void FBWrapperHolder::AddWrapper ( FBScriptWrapper ) [inherited]
void FBWrapperHolder::RemoveWrapper ( FBScriptWrapper ) [inherited]

Friends And Related Function Documentation

K_DLLIMPORT friend int __FBRegisterTypeInfo ( int  pInternalClassId ) [friend, inherited]

__FBRegisterTypeInfo For internal use only, Register the TypeInfo mapped to internal class id.


Member Data Documentation

Last Evaluation Id.

Definition at line 129 of file fbcharactersolver.h.

Read Write Property: The character being constrained.

Definition at line 130 of file fbcharactersolver.h.

Read Write Property: Source character when doing a character retarget.

Definition at line 131 of file fbcharactersolver.h.

Read Write Property: Is a deformer constraint?

Definition at line 335 of file fbconstraint.h.

Read Write Property: Does the constraint have a layout?

Definition at line 336 of file fbconstraint.h.

Read Write Property: Long description of constraint.

Definition at line 337 of file fbconstraint.h.

Read Write Property: Active state.

Definition at line 339 of file fbconstraint.h.

Read Write Property: Lock state.

Definition at line 340 of file fbconstraint.h.

Function Property: Snap constraint.

Definition at line 341 of file fbconstraint.h.

Read Write Property: Weight of constraint.

Reimplemented in FBStoryTrack.

Definition at line 342 of file fbconstraint.h.

const char* FBBox::UniqueName [inherited]

internal Unique name.

Definition at line 293 of file fbcore.h.

Read Write Property: Is the box animatable.

Definition at line 299 of file fbcore.h.

Read Write Property: Is live?

Definition at line 300 of file fbcore.h.

Read Write Property: Is recording?

Definition at line 301 of file fbcore.h.

DataFBComponent* FBComponent::mLocalPtr [inherited]

Handle on DataFBComponent.

Reimplemented in FBCustomManager.

Definition at line 650 of file fbcomponent.h.

FBString FBComponent::mName [protected, inherited]

Name of the component.

Definition at line 653 of file fbcomponent.h.

int FBComponent::TypeInfo [static, inherited]

Contains the Type information of the object.

Reimplemented from FBPlug.

Reimplemented in FBCustomManager.

Definition at line 658 of file fbcomponent.h.

Read Only Property: Manages all of the properties for the component.

Definition at line 838 of file fbcomponent.h.

List: List of components.

Reimplemented in FBScene, and FBPropertyInspector.

Definition at line 839 of file fbcomponent.h.

List: Parents.

Definition at line 840 of file fbcomponent.h.

Read Write Property: Selected property.

Definition at line 841 of file fbcomponent.h.

Read Write Property: Unique name of object.

Reimplemented in FBAssetMng, FBConsoleChannel, FBTriggerGroup, FBTrigger, FBMotionClip, and FBTool.

Definition at line 842 of file fbcomponent.h.

Read Write Property: Name and namespace for object.

Definition at line 843 of file fbcomponent.h.

FBPropertyFolder FBComponent::Folder [inherited]

Read Write Property: The folder that contain this component.

Definition at line 846 of file fbcomponent.h.

KObject* FBComponent::mDummyObject [inherited]

Internal Dummy Object for non KObject Components.

Definition at line 871 of file fbcomponent.h.

const char* FBPlug::ClassGroupName [static, inherited]

ClassGroupName of the object.

Definition at line 444 of file fbplug.h.

bool FBPlug::mAllocated [inherited]

Contain the Allocation State of the Component.

Definition at line 450 of file fbplug.h.

int FBPlug::mGlobalTypeInfo [static, protected, inherited]

Represente the Type Index.

Definition at line 500 of file fbplug.h.

HIObject FBPlug::mObject [protected, inherited]

Handle on the Plug.

Definition at line 502 of file fbplug.h.

bool FBPlug::mSDKComponent [protected, inherited]

bool Plug is an SDK component.

Definition at line 503 of file fbplug.h.


The documentation for this class was generated from the following file: