13 #ifndef _FBXSDK_FILEIO_COLLADA_READER_H_ 
   14 #define _FBXSDK_FILEIO_COLLADA_READER_H_ 
   82     virtual bool FileOpen(
char* pFileName);
 
  130 #ifndef DOXYGEN_SHOULD_SKIP_THIS 
  142     bool ReadCollada(
FbxScene &pScene, xmlNode* pXmlNode);
 
  149     bool ImportVisualScene(xmlNode* pXmlNode, 
FbxScene * pScene);
 
  156     bool ImportVisualSceneMax3DExtension(xmlNode * pTechniqueElement, 
FbxScene * pScene);
 
  163     bool ImportVisualSceneFCOLLADAExtension(xmlNode * pTechniqueElement, 
FbxScene * pScene);
 
  170     bool ImportVisualSceneMayaExtension(xmlNode * pTechniqueElement, 
FbxScene * pScene);
 
  189     FbxNode * ImportNode(xmlNode* pXmlNode);
 
  196     bool ImportNodeFCOLLADAExtension(xmlNode* pTechniqueElement, 
FbxNode * pNode);
 
  203     bool ImportNodeXSIExtension(xmlNode* pTechniqueElement, 
FbxNode * pNode);
 
  210     bool ImportNodeFBXExtension(xmlNode* pTechniqueElement, 
FbxNode * pNode);
 
  224     bool ImportSkin(xmlNode* pSkinElement);
 
  245     FbxCamera * ImportCamera(xmlNode* pXmlNode);
 
  252     FbxLight * ImportLight(xmlNode* pXmlNode);
 
  303     bool ImportVertices(xmlNode* pVerticesElement, 
FbxGeometry * pGeometry);
 
  320     bool ImportTransforms(xmlNode* pXmlNode, 
FbxNode* pNode);
 
  327     int ImportRotationElement(xmlNode* pXmlNode, 
FbxVector4& pRotationVector);
 
  344     bool ImportLookAt(xmlNode* pXmlNode, 
FbxVector4& lCameraPosition, 
 
  368     bool CheckColladaVersion(
const FbxString & pVersionString);
 
  381     void AddNotificationError( 
FbxString pError );
 
  386     void AddNotificationWarning( 
FbxString pWarning );
 
  394     bool ImportScene(xmlNode * pColladaNode);
 
  399     void Preprocess(xmlNode * pColladaElement);
 
  403     void BuildUpLibraryMap();
 
  409     void BuildUpLibraryMap(xmlNode * pElement, 
const FbxString & pElementTag);
 
  425     bool ImportTransparent(xmlNode * pElement, 
FbxSurfaceLambert * pSurfaceMaterial);
 
  428     struct LibraryTypeTraits
 
  440     FbxObject * GetLibrary(
const LibraryTypeTraits & pTypeTraits, xmlNode * pElement);
 
  447     bool ImportMatrixAnimation(
FbxNode * pNode, 
const FbxString & pAnimationChannelID);
 
  455     bool ImportPropertyAnimation(
FbxProperty & pProperty, 
const FbxString & pAnimationChannelID, 
const char * pChannelName = 
NULL);
 
  467     double GetLocalUnitConversion(xmlNode * pElement);
 
  473     void SetProperty(xmlNode* pPropertyElement, 
FbxProperty & pProperty);
 
  480     void ImportPropertyValue(
FbxObject * pObject, 
const char * pPropertyName,
 
  481                              xmlNode * pPropertyValueElement);
 
  497     xmlNode * mColladaElement;
 
  499     struct ColladaElementData
 
  501         explicit ColladaElementData(xmlNode * pElement = 
NULL)
 
  502             : mColladaElement(pElement), mFBXObject(
NULL) {}
 
  503         xmlNode * mColladaElement;
 
  508     ColladaElementMapType mColladaElements;
 
  510     LibraryTypeTraits mEffectTypeTraits;
 
  511     LibraryTypeTraits mMaterialTypeTraits;
 
  512     LibraryTypeTraits mImageTypeTraits;
 
  513     LibraryTypeTraits mGeometryTypeTraits;
 
  514     LibraryTypeTraits mControllerTypeTraits;
 
  515     LibraryTypeTraits mLightTypeTraits;
 
  516     LibraryTypeTraits mCameraTypeTraits;
 
  517     LibraryTypeTraits mNodeTypeTraits;
 
  518     LibraryTypeTraits mAnimationTypeTraits;
 
  521     AnimationMapType mAnimationElements;
 
  525     struct AnimationClipData
 
  527         AnimationClipData(
const FbxString & pID) : mID(pID), mAnimLayer(
NULL) {}
 
  528         AnimationClipData(
const AnimationClipData& pOther){ *
this = pOther; }
 
  529         AnimationClipData& operator=(
const AnimationClipData& pOther){ mID = pOther.mID; mAnimationElementIDs = pOther.mAnimationElementIDs; mAnimLayer = pOther.mAnimLayer; 
return *
this; }
 
  543     NodeMapType mIDNamespaceNodes;
 
  544     NodeMapType mSIDNamespaceNodes;
 
  549     TargetIDMapType mTargetIDs;
 
The animation layer is a collection of animation curve nodes. 
 
This class describes image mapping on top of geometry. 
 
virtual ~FbxReaderCollada()
Destructor. 
 
This class represents the coordinate system of the scene and can convert scenes to other coordinate s...
 
This class contains material settings. 
 
Utility class to manipulate strings. 
 
Class to read a Collada file and import it to a FBX scene. 
 
FbxDocument is a base class for FbxScene and FbxLibrary classes. 
 
Base class of other readers used internally. 
 
This class facilitates the testing/reporting of errors. 
 
virtual bool Read(FbxDocument *pDocument)
Read from Collada file and import it to the FBX document, according to the given options settings...
 
This class contains scene thumbnails and user-defined summary data. 
 
This class contains functions for accessing global settings. 
 
virtual bool FileClose()
Close file. 
 
This class implements an efficient map based on key comparison, which stores key-value pairs...
 
The base class of most FBX objects. 
 
virtual bool GetAxisInfo(FbxAxisSystem *pAxisSystem, FbxSystemUnit *pSystemUnits)
Get axis system information from file. 
 
Represents an element in the scene graph. 
 
This node attribute contains methods for accessing the properties of a light. 
 
This class contains settings for Lambert Materials. 
 
This class contains the description of a 3D scene. 
 
This class implements an efficient set based on value comparison, which stores values. 
 
virtual FbxArray< FbxTakeInfo * > * GetTakeInfo()
Returns the list of take infos from the file. 
 
Containing the valid parameter definition and modification in local scope. 
 
Template class for dynamic array holding objects. 
 
Class to hold user properties. 
 
A four double mathematic vector class. 
 
FBX SDK affine matrix class. 
 
This class describes the units of measurement used within a particular scene. 
 
This node attribute contains methods for accessing the properties of a camera. 
 
virtual bool FileOpen(char *pFileName)
Open file with the given name. 
 
virtual bool IsFileOpen()
Check if current file is open. 
 
virtual bool GetReadOptions(bool pParseFileAsNeeded=true)
Get Collada import options settings. 
 
Class for interfacing with files, providing a similar interface for files independant of the OS or fi...
 
The base class of geometric objects that support control point deformations (e.g. ...
 
FbxReaderCollada(FbxManager &pManager, int pID, FbxStatus &pStatus)
Constructor. 
 
A mesh is a geometry made of polygons.