FBX C++ API Reference
fbxhik2fbxcharacter.h
Go to the documentation of this file.
1 /****************************************************************************************
2 
3  Copyright (C) 2015 Autodesk, Inc.
4  All rights reserved.
5 
6  Use of this software is subject to the terms of the Autodesk license agreement
7  provided at the time of installation or download, or which otherwise accompanies
8  this software in either electronic or hard copy form.
9 
10 ****************************************************************************************/
11 
13 #ifndef _FBXSDK_SCENE_CONSTRAINT_HIK_TO_FBXCHARACTER_H_
14 #define _FBXSDK_SCENE_CONSTRAINT_HIK_TO_FBXCHARACTER_H_
15 
16 #include <fbxsdk/fbxsdk_def.h>
17 
19 
20 #include <fbxsdk/fbxsdk_nsbegin.h>
21 
23 {
24 public:
25  const char* mHIKPropertyName;
28  int mIndex;
30 };
31 
32 // Changed gHIK2FbxCharacterPropertyBridge from static to extern to reduce final binary
33 // size. This table is ~8Kb so multiple copies in 20+ translation units soon add up.
36 
38 {
39 public:
40  static inline const FbxCharacterPropertyInfo& GetAt(int i) { return gHIK2FbxCharacterPropertyBridge[i]; }
41 
42  static inline const FbxCharacterPropertyInfo* GetPropertyInfoFromFbxCharacterProperty(const char* pCharacterPropertyName)
43  {
44  for (int lCounter = 0; lCounter < static_cast<int>(gHIK2FbxCharacterPropertyBridgeSize); lCounter++)
45  {
46  if (GetAt(lCounter).mFbxCharacterPropertyName && !strcmp(GetAt(lCounter).mFbxCharacterPropertyName, pCharacterPropertyName))
47  {
48  return &GetAt(lCounter);
49  }
50  }
51  return NULL;
52  }
53 
54  static inline const FbxCharacterPropertyInfo* GetPropertyInfoFromHIKProperty(const char* pHIKPropertyName)
55  {
56  for (int lCounter = 0; lCounter < static_cast<int>(gHIK2FbxCharacterPropertyBridgeSize); lCounter++)
57  {
58  if (!strcmp(GetAt(lCounter).mHIKPropertyName, pHIKPropertyName))
59  {
60  return &GetAt(lCounter);
61  }
62  }
63  return NULL;
64  }
65 };
66 
67 #include <fbxsdk/fbxsdk_nsend.h>
68 
69 #endif /* _FBXSDK_SCENE_CONSTRAINT_HIK_TO_FBXCHARACTER_H_ */
FBX SDK environment definition.
const size_t gHIK2FbxCharacterPropertyBridgeSize
#define NULL
Definition: fbxarch.h:213
static const FbxCharacterPropertyInfo & GetAt(int i)
static const FbxCharacterPropertyInfo * GetPropertyInfoFromFbxCharacterProperty(const char *pCharacterPropertyName)
const char * mFbxCharacterPropertyName
static const FbxCharacterPropertyInfo * GetPropertyInfoFromHIKProperty(const char *pHIKPropertyName)
FbxCharacter::EPropertyUnit mUnit
const FbxCharacterPropertyInfo gHIK2FbxCharacterPropertyBridge[]
#define FBXSDK_DLL
Definition: fbxarch.h:176
const char * mFbxCharacterPropertyModeName