fbsdk/fbfbxoptions.h Source File

fbfbxoptions.h
Go to the documentation of this file.
1 #ifndef __FBFBXOPTIONS_H__
2 #define __FBFBXOPTIONS_H__
3 /**************************************************************************
4  Copyright (c) 1994 - 2009 Autodesk, Inc. and/or its licensors.
5  All Rights Reserved.
6 
7  The coded instructions, statements, computer programs, and/or related
8  material (collectively the "Data") in these files contain unpublished
9  information proprietary to Autodesk, Inc. and/or its licensors, which is
10  protected by Canada and United States of America federal copyright law
11  and by international treaties.
12 
13  The Data may not be disclosed or distributed to third parties, in whole
14  or in part, without the prior written consent of Autodesk, Inc.
15  ("Autodesk").
16 
17  THE DATA IS PROVIDED "AS IS" AND WITHOUT WARRANTY.
18  ALL WARRANTIES ARE EXPRESSLY EXCLUDED AND DISCLAIMED. AUTODESK MAKES NO
19  WARRANTY OF ANY KIND WITH RESPECT TO THE DATA, EXPRESS, IMPLIED OR
20  ARISING BY CUSTOM OR TRADE USAGE, AND DISCLAIMS ANY IMPLIED WARRANTIES
21  OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR
22  PURPOSE OR USE. WITHOUT LIMITING THE FOREGOING, AUTODESK DOES NOT
23  WARRANT THAT THE OPERATION OF THE DATA WILL BE UNINTERRUPTED OR ERROR
24  FREE.
25 
26  IN NO EVENT SHALL AUTODESK, ITS AFFILIATES, PARENT COMPANIES, LICENSORS
27  OR SUPPLIERS ("AUTODESK GROUP") BE LIABLE FOR ANY LOSSES, DAMAGES OR
28  EXPENSES OF ANY KIND (INCLUDING WITHOUT LIMITATION PUNITIVE OR MULTIPLE
29  DAMAGES OR OTHER SPECIAL, DIRECT, INDIRECT, EXEMPLARY, INCIDENTAL, LOSS
30  OF PROFITS, REVENUE OR DATA, COST OF COVER OR CONSEQUENTIAL LOSSES OR
31  DAMAGES OF ANY KIND), HOWEVER CAUSED, AND REGARDLESS OF THE THEORY OF
32  LIABILITY, WHETHER DERIVED FROM CONTRACT, TORT (INCLUDING, BUT NOT
33  LIMITED TO, NEGLIGENCE), OR OTHERWISE, ARISING OUT OF OR RELATING TO THE
34  DATA OR ITS USE OR ANY OTHER PERFORMANCE, WHETHER OR NOT AUTODESK HAS
35  BEEN ADVISED OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE.
36 
37 **************************************************************************/
38 
47 #include <kaydaradef.h>
48 #ifndef FBSDK_DLL
49 
52  #define FBSDK_DLL K_DLLIMPORT
53 #endif
54 
55 #include <fbsdk/fbcomponent.h>
56 
57 #ifdef FBSDKUseNamespace
58  namespace FBSDKNamespace {
59 #endif
60 
61 
63 
71 };
72 FB_DEFINE_ENUM( FBSDK_DLL, ElementAction ); // FBPropertyElementAction
73 
80 };
81 FB_DEFINE_ENUM( FBSDK_DLL, TakeSpanOnLoad ); // FBPropertyTakeSpanOnLoad
82 
91 };
92 FB_DEFINE_ENUM(FBSDK_DLL, CharacterLoadAnimationMethod);
93 
95 {
103 };
104 FB_DEFINE_ENUM(FBSDK_DLL, FileFormatAndVersion);
105 
107 
115 };
116 
117 __FB_FORWARD( FBFbxOptions );
118 
122 public:
130  FBFbxOptions( bool pLoad, const char * pFilePathToLoad = NULL, HIObject pObject = NULL);
131 
137  void SetAll( FBElementAction pElementAction, bool pAnimation );
138 
144  void SaveToString(FBString& pString, FBOptionsContext context );
145 
151  void SetFromString( const char* pString, FBOptionsContext context );
152 
158 
164 
165 
166 
181 
182 
183 
192 
193 
200 
201 
207 
208 
239 
240 
241 
262 
263 
271 
272 
273 
274 
287 
288 
295 
296 
301 
305  int GetTakeCount() const;
306 
310  bool GetTakeSelect(int pTakeIndex) const;
311 
316  void SetTakeSelect(int pTakeIndex, bool pSelect);
317 
321  const char* GetTakeName(int pTakeIndex) const;
322 
327  void SetTakeName(int pTakeIndex, const char* pName);
328 
332  const char* GetTakeDescription(int pTakeIndex) const;
333 
338  void SetTakeDescription(int pTakeIndex, const char* pDescription);
339 
343  const char* GetTakeDestinationName(int pTakeIndex) const;
344 
349  void SetTakeDestinationName(int pTakeIndex, const char* pDestinationName);
351 
356  void SetNamespaceList(const FBStringList& pNamespaceList);
357 
361  FBStringList GetNamespaceList();
362 
363 
369  void SetObjectsToSave( FBArrayTemplate<FBComponent *> *pObjectsToSave );
370 
397  void SetMultiLoadNamespaceList( const FBStringList& pMultiLoadNamespaceList );
398 
404  FBStringList GetMultiLoadNamespaceList();
405 };
406 
407 #ifdef FBSDKUseNamespace
408  }
409 #endif
410 
411 #endif
FBPropertyBool CurrentCameraSettings
Read Write Property: Consider current camera settings.
Definition: fbfbxoptions.h:189
FBPropertyBool ReplaceControlSet
Read Write Property: Set to true if the character extensions (and their children) should be saved whe...
Definition: fbfbxoptions.h:280
FBPropertyBool SetPropertyStaticIfPossible
Read Write Property: Set to false if want to keep properties' animated flag even when they are not re...
Definition: fbfbxoptions.h:294
FBPropertyBool IgnoreConflicts
Read Write Property: Set to true to ignore conflicts between objects in character extensions and obje...
Definition: fbfbxoptions.h:286
FBPropertyBool ModelsAnimation
Read Write Property: Handling of the Models animation.
Definition: fbfbxoptions.h:255
FBPropertyElementAction Sets
Read Write Property: Handling of the Sets elements.
Definition: fbfbxoptions.h:233
FBPropertyBool UpdateRecentFiles
Read Write Property: Set to true to update recent file list.
Definition: fbfbxoptions.h:157
#define __FBClassDeclare(Name, Parent)
For internal use only.
Definition: fbcomponent.h:132
FBPropertyBool CharactersAnimation
Read Write Property: Handling of the Characters animation.
Definition: fbfbxoptions.h:249
FBPropertyElementAction Materials
Read Write Property: Handling of the Materials elements.
Definition: fbfbxoptions.h:226
FBPropertyElementAction Groups
Read Write Property: Handling of the Groups elements.
Definition: fbfbxoptions.h:223
FBPropertyBool SaveControlSet
Read Write Property: Set to true if the rig (and its children) should be saved when call FBApplicatio...
Definition: fbfbxoptions.h:268
FBPropertyBool TexturesAnimation
Read Write Property: Handling of the Textures animation.
Definition: fbfbxoptions.h:261
It's FBX Version 6.
Definition: fbfbxoptions.h:96
FBPropertyBool RetargetOnBaseLayer
Read Write Property: If the transfer method is retarget, set this parameter to control where the reta...
Definition: fbfbxoptions.h:285
class FBPropertyBaseEnum< enum FBCharacterLoadAnimationMethod > FBPropertyCharacterLoadAnimationMethod
Definition: fbfbxoptions.h:92
FBPropertyBool ResetHierarchy
Read Write Property: Set to true if we should reset the character hierarchy.
Definition: fbfbxoptions.h:282
Plot animation from loaded character to target character.
Definition: fbfbxoptions.h:90
FBPropertyElementAction Constraints
Read Write Property: Handling of the Constraints elements.
Definition: fbfbxoptions.h:220
FBPropertyBool NotesAnimation
Read Write Property: Handling of the Notes animation.
Definition: fbfbxoptions.h:256
FBPropertyInt CompressLevel
Read Write Property: The allowed level range for Compression is [0-9] where 0 equals no compression a...
Definition: fbfbxoptions.h:180
FBPropertyBool ConstraintsAnimation
Read Write Property: Handling of the Constraints animation.
Definition: fbfbxoptions.h:251
FBPropertyElementAction Audio
Read Write Property: Handling of the Audio elements.
Definition: fbfbxoptions.h:214
Serialize options within a load context.
Definition: fbfbxoptions.h:112
FBPropertyElementAction Lights
Read Write Property: Handling of the Lights elements.
Definition: fbfbxoptions.h:225
FBPropertyBool ResetDOF
Read Write Property: Set to true if we should change the limits on the target rig.
Definition: fbfbxoptions.h:281
FBPropertyElementAction Characters
Read Write Property: Handling of the Characters elements.
Definition: fbfbxoptions.h:217
FBPropertyBool SaveCharacterExtensions
Read Write Property: Set to true if the character extensions (and their children) should be saved whe...
Definition: fbfbxoptions.h:269
Basic string class.
Definition: fbstring.h:66
FBPropertyBool ClearSelectionBeforeSave
Read Write Property: Set to true if the current selected objects shouldn't saved when call FBApplicat...
Definition: fbfbxoptions.h:270
Use the current take's start and end point as defined before the load.
Definition: fbfbxoptions.h:77
#define NULL
Definition: kaydara.h:169
Merge the elements from the file in the current scene (when merging).
Definition: fbfbxoptions.h:69
Customize file loading and saving.
Definition: fbfbxoptions.h:120
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
Definition: fbfbxoptions.h:52
FBPropertyBool CharacterFacesAnimation
Read Write Property: Handling of the Character Faces animation.
Definition: fbfbxoptions.h:250
FBPropertyBool ShowFileDialog
Read Write Property: Set to true if want to pop up dialog for FileName, Format, Embed, Compression, UseTakeName, OneTakePerFile.
Definition: fbfbxoptions.h:292
FBPropertyInt CacheSize
Read Write Property: The Cached buffer size used to accelerate IO system.
Definition: fbfbxoptions.h:177
FBPropertyBool ShowOptionsDialog
Read Write Property: Set to true if want to pop up options dialog for detail settings.
Definition: fbfbxoptions.h:293
Have the take's span match the first and last key in the take.
Definition: fbfbxoptions.h:79
FBPropertyBool CamerasAnimation
Read Write Property: Handling of the Cameras animation.
Definition: fbfbxoptions.h:248
Property class: const char * (String).
FBOptionsContext
Enumeration that describe the different context available when serializing options to a string...
Definition: fbfbxoptions.h:109
#define FB_DEFINE_ENUM(DllTag, Type)
Define an enum and give it the ability to be a property.
Definition: fbproperties.h:148
FBPropertyElementAction Actors
Read Write Property: Handling of the Actors elements.
Definition: fbfbxoptions.h:212
MotionBuilder SDK base class.
Definition: fbcomponent.h:668
FBPropertyBool SolversAnimation
Read Write Property: Handling of the Solvers animation.
Definition: fbfbxoptions.h:259
Only connect the loaded character as an input.
Definition: fbfbxoptions.h:86
FBPropertyBool RemoveEmptyLayer
Read Write property: Remove empty animation layers that are in additive mode, without child or parent...
Definition: fbfbxoptions.h:205
Retarget (copy and correct) keys from loaded character to target character.
Definition: fbfbxoptions.h:88
FBPropertyBool CameraSwitcherSettings
Read Write Property: Consider camera switcher settings.
Definition: fbfbxoptions.h:188
class FBPropertyBase< bool, kFBPT_bool > FBPropertyBool
Property: bool
FBPropertyElementAction Models
Read Write Property: Handling of the Models elements.
Definition: fbfbxoptions.h:227
FBPropertyBool SaveCharacter
Read Write Property: Set to true if the character should be saved when call FBApplication::SaveCharac...
Definition: fbfbxoptions.h:267
FBPropertyBool LightsAnimation
Read Write Property: Handling of the Lights animation.
Definition: fbfbxoptions.h:253
FBPropertyElementAction Textures
Read Write Property: Handling of the Textures elements.
Definition: fbfbxoptions.h:237
FBPropertyElementAction Poses
Read Write Property: Handling of the Poses elements.
Definition: fbfbxoptions.h:231
Default Format and Version.
Definition: fbfbxoptions.h:102
FBX Version 2014/2015.
Definition: fbfbxoptions.h:100
FBPropertyElementAction CharacterExtensions
Read Write Property: Handling of the Character Extensions.
Definition: fbfbxoptions.h:219
If loaded animation seems sampled, plot animation from loaded character to target character; else ret...
Definition: fbfbxoptions.h:89
class FBPropertyBaseEnum< enum FBTakeSpanOnLoad > FBPropertyTakeSpanOnLoad
Definition: fbfbxoptions.h:81
class FBPropertyBaseEnum< enum FBFileFormatAndVersion > FBPropertyFileFormatAndVersion
Definition: fbfbxoptions.h:104
Do not consider the element (when loading, merging and saving).
Definition: fbfbxoptions.h:70
FBPropertyFileFormatAndVersion FileFormatAndVersion
Read Write Property: File format and version chosen to save the scene.
Definition: fbfbxoptions.h:172
FBPropertyBool KeepTransformHierarchy
Read Write Property: Indicate whether we keep transform hierarchy when SaveSelectedModelsOnly is true...
Definition: fbfbxoptions.h:175
FBElementAction
Enumeration that describe the different actions available on a scene element depending on the current...
Definition: fbfbxoptions.h:66
Serialize options within a save context.
Definition: fbfbxoptions.h:110
FBPropertyElementAction Video
Read Write Property: Handling of the Video elements.
Definition: fbfbxoptions.h:238
FBPropertyBool MaterialsAnimation
Read Write Property: Handling of the Materials animation.
Definition: fbfbxoptions.h:254
FBPropertyBool StoryAnimation
Read Write Property: Handling of the Story animation (animatable properties on story objects)...
Definition: fbfbxoptions.h:260
FBTakeSpanOnLoad
This enumeration indicate the how to set the take start and end points on after a load...
Definition: fbfbxoptions.h:76
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
Definition: fbtypes.h:68
FBPropertyBool EmbedMedia
Read Write Property: Embed all media in the FBX file itself.
Definition: fbfbxoptions.h:173
Template class to contain an array of items.
Definition: fbarray.h:77
FBPropertyElementAction Solvers
Read Write Property: Handling of the Solvers elements.
Definition: fbfbxoptions.h:235
FBPropertyElementAction Devices
Read Write Property: Handling of the Devices elements.
Definition: fbfbxoptions.h:221
FBFileFormatAndVersion
Definition: fbfbxoptions.h:94
#define FBSDKNamespace
FBSDKNamespace define.
Definition: fbversion.h:64
Serialize options within a merge context.
Definition: fbfbxoptions.h:114
FBPropertyBool TransportSettings
Read Write Property: Consider transport control settings.
Definition: fbfbxoptions.h:191
FBPropertyBool GlobalLightingSettings
Read Write Property: Consider global Lighting settings.
Definition: fbfbxoptions.h:190
FBPropertyElementAction Notes
Read Write Property: Handling of the Notes elements.
Definition: fbfbxoptions.h:228
Basic class definitions.
FBPropertyInt CompressMinSize
Read Write Property: Indicate if the minimum item size for compressing arrays.
Definition: fbfbxoptions.h:179
FBX Version 2013.
Definition: fbfbxoptions.h:99
FBPropertyBool SaveSelectedModelsOnly
Read Write Property: Indicate that only the selected models will be saved.
Definition: fbfbxoptions.h:174
Save the element (when saving).
Definition: fbfbxoptions.h:67
FBPropertyElementAction PhysicalProperties
Read Write Property: Handling of the Physical Properties elements.
Definition: fbfbxoptions.h:230
FBPropertyElementAction ActorFaces
Read Write Property: Handling of the Actor Faces elements.
Definition: fbfbxoptions.h:213
FBPropertyTakeSpanOnLoad TakeSpan
Read Write Property: Indicate how the take start and end point should be set.
Definition: fbfbxoptions.h:163
FBPropertyString NamespaceList
Read Write Property: A list of namespaces separated by '~'.
Definition: fbfbxoptions.h:199
FBPropertyBool PhysicalPropertiesAnimation
Read Write Property: Handling of the Physical Properties animation.
Definition: fbfbxoptions.h:257
FBPropertyBool ShadersAnimation
Read Write Property: Handling of the Shaders animation.
Definition: fbfbxoptions.h:258
FBPropertyBool FileReference
Read Write property: Load/Save scene as FileReference.
Definition: fbfbxoptions.h:197
String list.
Definition: fbstring.h:201
FBX Version 2011.
Definition: fbfbxoptions.h:97
FBPropertyBool CopyCharacterExtensions
Read Write Property: pCopyMissingExtensions Set to true if the character extensions on the rig in the...
Definition: fbfbxoptions.h:284
Serialize options within a multi-load context.
Definition: fbfbxoptions.h:113
class FBPropertyBaseEnum< enum FBElementAction > FBPropertyElementAction
Definition: fbfbxoptions.h:72
FBPropertyBool ConsiderMuteSolo
Read Write property: Consider the mute/solo settings to identify identical layer when merging...
Definition: fbfbxoptions.h:206
FBPropertyElementAction Bones
Read Write Property: Handling of the Bones elements.
Definition: fbfbxoptions.h:215
FBPropertyBool UseASCIIFormat
Read Write Property: Indicate if the resulting FBX file will be in binary or ASCII mode...
Definition: fbfbxoptions.h:176
class FBPropertyBase< int, kFBPT_int > FBPropertyInt
Property: int
FBPropertyBool FileReferenceEdit
Read Write Property: Load/Save the edits made to referenced objects or not.
Definition: fbfbxoptions.h:198
FBPropertyCharacterLoadAnimationMethod TransferMethod
Read Write Property: How should the animation should be transfered on the target rig.
Definition: fbfbxoptions.h:278
FBPropertyBool CompressArray
Read Write Property: Indicate if the perform compression on the arrays values.
Definition: fbfbxoptions.h:178
Copy keys from loaded character to target character.
Definition: fbfbxoptions.h:87
FBCharacterLoadAnimationMethod
This enumeration is used to choose how to load an animation file on a character.
Definition: fbfbxoptions.h:85
FBPropertyBool DevicesAnimation
Read Write Property: Handling of the Devices animation.
Definition: fbfbxoptions.h:252
FBPropertyElementAction Cameras
Read Write Property: Handling of the Cameras elements.
Definition: fbfbxoptions.h:216
FBPropertyBool ProcessAnimationOnExtension
Read Write Property: Set to true if animation on character extensions should also be transferred...
Definition: fbfbxoptions.h:279
FBPropertyElementAction KeyingGroups
Read Write Property: Handling of the Keying Groups elements.
Definition: fbfbxoptions.h:224
FBPropertyElementAction Shaders
Read Write Property: Handling of the Shaders elements.
Definition: fbfbxoptions.h:234
FBPropertyBool ActorFacesAnimation
Read Write Property: Handling of the Actor Faces animation.
Definition: fbfbxoptions.h:246
FBPropertyBool RemoveConstraintReference
Read Write Property: Set to true if we should remove constraint reference.
Definition: fbfbxoptions.h:283
FBPropertyElementAction CharacterFaces
Read Write Property: Handling of the Character Faces elements.
Definition: fbfbxoptions.h:218
FBX Version 2012.
Definition: fbfbxoptions.h:98
Append the elements to the current scene elements (when loading or merging).
Definition: fbfbxoptions.h:68
Set the current take's span according what is set in the loaded file.
Definition: fbfbxoptions.h:78
FBPropertyBool BonesAnimation
Read Write Property: Handling of the Bones animation.
Definition: fbfbxoptions.h:247
Serialize options within a save selection context.
Definition: fbfbxoptions.h:111
FBPropertyElementAction FileReferences
Read Write Property: Handling of the FileReferences elements.
Definition: fbfbxoptions.h:222
FBPropertyElementAction Scripts
Read Write Property: Handling of the Scripts elements.
Definition: fbfbxoptions.h:232
FBPropertyBool BaseCameras
Read Write Property: Consider base camera settings.
Definition: fbfbxoptions.h:187
void * context
Definition: pycapsule.h:49
FBPropertyElementAction Story
Read Write Property: Handling of the Story elements.
Definition: fbfbxoptions.h:236
FBX Version 2016.
Definition: fbfbxoptions.h:101
FBPropertyElementAction OpticalData
Read Write Property: Handling of the Optical Data elements.
Definition: fbfbxoptions.h:229