1 #ifndef __FBPAPPLICATION_H__
2 #define __FBPAPPLICATION_H__
48 #define FBSDK_DLL K_DLLIMPORT
54 #ifdef FBSDKUseNamespace
138 #if !defined(K_NO_CHARACTER)
207 #if !defined(K_NO_AUDIO)
233 #if !defined(K_NO_CHARACTER)
236 #if !defined(K_NO_ACTOR)
239 #if !defined(K_NO_CHARACTER)
242 #if !defined(K_NO_ACTOR)
255 #if !defined(K_NO_ONECLICK)
330 bool Minimize(
bool pBlocking=
true);
338 void UpdateAllWidgets();
344 void FlushEventQueue();
351 bool FileNew(
bool pAskUser =
false,
bool pClearSceneName =
true);
361 bool FileOpen(
const char* pFilename,
bool pShowUIMsg =
false,
FBFbxOptions* pOptions =
NULL );
369 bool FileOpen(
void* pBuffer, kULong pBufferLength );
379 bool GetMaxFrameCount(
void* pBuffer, kULong pBufferLength, kLong* pFrameCount,
int pTimeScale);
391 bool FileMerge(
const char* pFilename,
bool pShowUIMsg =
false,
FBFbxOptions* pOptions =
NULL );
417 bool FileAppend(
const char* pFilename,
bool pShowUIMsg =
false,
FBFbxOptions* pOptions =
NULL );
432 void FileExit(
bool pSave =
false,
int pExitCode = 0);
449 bool FileImport(
FBString pFilename,
bool pMatchModels =
false,
bool pCreateUnmatchedModels =
true );
472 bool FileExport(
FBString pFilename );
503 #if !defined(K_NO_CHARACTER)
527 bool IsValidBatchFile(
const char* pFilename );
529 #if !defined(K_NO_ONECLICK)
539 bool OneClickUpdateCurrentScene();
544 bool OneClickAddToCurrentScene();
548 void OneClickSelectPreviouslySentObject();
565 #if !defined(K_NO_AUDIO)
579 bool ExecuteScript(
FBString pFilename);
589 #if !defined(K_NO_ACTOR)
592 #if !defined(K_NO_CHARACTER)
602 const char* GetSceneTitle();
607 void SetSceneTitle(
const char* pTitle);
611 const char* GetSceneSubject();
616 void SetSceneSubject(
const char* pSubject);
620 const char* GetSceneAuthor();
625 void SetSceneAuthor(
const char* pAuthor);
629 const char* GetSceneKeywords();
634 void SetSceneKeywords(
const char* pKeywords);
638 const char* GetSceneRevisionNumber();
643 void SetSceneRevisionNumber(
const char* pRevNumber);
647 const char* GetSceneComment();
652 void SetSceneComment(
const char* pComment);
735 #ifdef FBSDKUseNamespace
PropertyEvent: Base event class.
File format for Motion Analysis TRC.
FBBatchStatus
Different return values of the Batch process.
#define __FBClassDeclare(Name, Parent)
For internal use only.
FBPropertyEvent OnFileNew
Event: A File New has been requested, nothing has been destroyed yet.
FBBatchFileFormat mInputFileFormat
File format of the input files.
#define FB_DEFINE_COMPONENT(DllTag, Type)
Define a component and give it the ability to be a property.
Event that is called before a file open/merge.
Property class: const char * (String).
FBPropertyEvent OnFileMerge
Event: A File Merge has been requested, nothing has been loaded yet.
bool mStartAnimationAtZero
Set the time of all loaded files to 0.
FBAudioRateMode
Enum FBAudioRateMode.
bool mPlotOnFrame
Should we plot on frame?
FBTimeSpan TimeSpan
Property: Start and stop selection time to render.
FBPropertyEventOverrideFileOpen OnOverrideFileOpen
Event: Called when a file is about to be opened/merged.
FBPlotTangentMode
The tangent mode for plotted curve.
bool FBMergeTransactionIsOn()
Call to tell if system is during Merge transaction.
FBAudioChannelMode ChannelMode
Property: Audio render channel number, 1 for Mono(left channel right channel render mixed to one chan...
bool mOverwriteScaling
Set the scaling to a default setting of 1.0.
void FBPreventUIUpdateEnd()
Call to end blocking the UI updates.
A take is a container for animation in a scene.
Customize file loading and saving.
File format for Vicon C3D.
bool mPlotTranslationOnRootOnly
Should we plot the translation on root only?
bool mFrameAnimation
Set timeline start and end time to corespond with the start and end of animation. ...
File format for Motion Analysis HTR.
class FBPropertyBaseComponent< FBCharacter * > FBPropertyCharacter
Save the takes in different files.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
FBCharacter * mCharacter
The character to receive the animation.
FBViewerMode
Different viewer modes for the 3D viewer.
Creates custom cameras and manages system cameras.
FBTime mPlotPeriod
The plot period (1/fps).
FBBatchFileFormat
Different file formats for the batch.
FBString mInputDirectory
The directory containning the input files.
bool mPlotToCharacter
To plot the animation on the character.
FBPropertyBool WillOverride
Read Write Property: Set to true for handling the file load, false by default.
FBBatchProcessType mProcessType
What process should be done? Load, Save or Both.
Load the files and plot the character with every take.
FBRotationFilter
Rotation filters.
FBBatchProcessType
Different process type for the batch.
#define FB_DEFINE_ENUM(DllTag, Type)
Define an enum and give it the ability to be a property.
bool mPlotAuxEffectors
Should we plot aux effectors?
bool mPreciseTimeDiscontinuities
Should we use precise time discontinuities?
FBBatchOnTakeExist mOnTakeExistAction
Action to perform when a take already exist while in a batch process.
bool FBMergeTransactionFileRefEditIsOn()
Call to tell if system is during File Reference Edit Merge transaction.
File format for Acclaim AMC.
FBAudioBitDepthMode
Enum FBAudioBitDepthMode.
bool mConstantKeyReducerKeepOneKey
Should the constant key reducer keep at least one key?
FBBatchOnContainsBatchTakes
Different actions to perform when a scene already contains batch takes while in a batch process...
FBString OutputFileName
Property: Audio Render destination file.
FBBatchOnTakeExist
Different actions to perform when a take already exist while in a batch process.
FBRotationFilter mRotationFilterToApply
The rotation filter to apply.
bool mUseBatchSuffix
Add a batch suffix to the name of the files.
bool mPlotLockedProperties
Should we plot locked properties?
FBPropertyEvent OnFileOpenCompleted
Event: A File Open has been completed.
File format for Biovision BVH.
FBBatchFileFormat mOutputFileFormat
File format of the output files.
bool mUseConstantKeyReducer
Should we use a constant key reducer with the filter?
FBPropertyString FilePath
Read Only Property: Path to the file that will be opened/merged.
bool mPlotAllTakes
Should we plot all takes?
bool FBPreventUIUpdateIsOn()
Call to tell if UI updates are blocked.
#define K_DEPRECATED_2016
File format for FBX (animation only).
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
void FBMergeTransactionFileRefEditBegin()
Call to begin the transaction for merging multiple files and applying File Reference edit at the same...
Save only the batch takes.
FBOneClickApplication
Possible application for One-Click interop with MotionBuilder.
Option parameters for plotting.
FBPropertyActor CurrentActor
Read Write Property: Indicate the current actor, as used by the character tool.
class FBArrayTemplate< FBModel * > FBModelList
typedef class FBSDK_DLL FBArrayTemplate FBModelList;
FBString mOutputDirectory
The directory containning the output files.
bool mUseSingleTake
Use only one take to convert all files.
#define FBSDKNamespace
FBSDKNamespace define.
FBAudioRateMode RateMode
Property: Rate mode for number of samples per second.
FBPropertyEvent OnFileSaveCompleted
Event: A File Save has been completed.
bool mWriteRate
Write frame rate in Acclaim AMC files.
bool mWriteTranslation
Write translation animation data included with Acclaim AMC files.
FBPropertyEvent OnFileSave
Event: A File Save has been requested, nothing has been saved yet.
FBActor is used to link motion data to a character.
class FBPropertyBaseComponent< FBActor * > FBPropertyActor
Video Grabbing Options structure.
bool mEvaluateDeformation
Should we evaluate deformation while plotting? This is useful when there is a dependency with the def...
MotionBuilder SDK base class.
void FBMergeTransactionEnd()
Call to end the merge transaction.
void FBMergeTransactionFileRefEditEnd()
Call to end merge transaction with File Reference edit.
PropertyEvent: Event when a file is about to be opened/merged.
void FBMergeTransactionBegin()
Call to begin the transaction for merging multiple files.
#define FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
Option parameters for the batch process.
FBPlotTangentMode mPlotTangentMode
The tangent mode for plotted curve.
FBBatchOnContainsBatchTakes mOnContainsBatchTakesAction
Action to perform when a scene already contains batch takes while in a batch process.
FBPropertyEvent OnFileExit
Event: A File Exit as been requested, nothing has been destroyed yet.
FBPropertyString FBXFileName
Read Write Property: Current scene filename.
FBPropertyCharacter CurrentCharacter
Read Write Property: Indicate the current character, as used by the character tool.
bool mKeepCharacterConstraint
To keep the character constaint when saving.
A character is the link between a motion source and a character model.
FBApplication is used mainly to manage files.
Audio Render Options structure.
FBPropertyEvent OnFileOpen
Event: A File Open has been requested, nothing has been loaded yet.
bool mPlotToControlSet
To plot the animation on the control set.
FBPropertyEvent OnFileNewCompleted
Event: A File New has been completed.
FBAudioBitDepthMode BitDepthMode
Property: Bit depth for one sample of audio.
bool mKeepDummyBones
To keep dummy bones.
FBString mSkeletonFile
The Skeleton file (for Acclaim AMC files).
FBAudioChannelMode
Enum FBAudioChannelMode.
void(ICallback::* kICallbackHandler)(HIRegister pCaller, HKEventBase pEvent)
void FBPreventUIUpdateBegin()
Call to prevent UI updates when creating/deleting/renaming objects.
Customize motion file loading.
class FBPropertyBase< bool, kFBPT_bool > FBPropertyBool
Property: bool