COLLADASubComponentAttributeList.h

Go to the documentation of this file.
00001 //***************************************************************************************
00002 // File supervisor: Crosswalk team
00012 //***************************************************************************************
00013 
00014 #ifndef _COLLADASUBCOMPONENTATTRIBUTELIST_H
00015 #define _COLLADASUBCOMPONENTATTRIBUTELIST_H
00016 
00017 #include "COLLADATemplate.h"
00018 #include "XSISubComponentAttributeList.h"
00019 
00020 
00026 class XSIEXPORT CSLCOLLADASubComponentAttributeList
00027     : public CSLXSISubComponentAttributeList
00028 {
00029 public:
00030 
00036     CSLCOLLADASubComponentAttributeList(CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate);
00037 
00040     virtual ~CSLCOLLADASubComponentAttributeList();
00041 
00045     virtual SI_Void     SetAttributeType(EAttributeType in_AttributeType);
00046     virtual SI_Char*    GetSemantic() { return m_szSemantic.GetText(); };
00047 
00051     virtual SI_Void     SetSemantic(SI_Char* in_Semantic) { m_szSemantic.SetText(in_Semantic);};
00052     virtual SI_Char*    GetSource() { return m_pMainID->GetVariantPtr()->p_cVal; };
00053 
00054     virtual SI_Error    Synchronize();
00055 
00056     SI_Void SetVerticesDeclarationTemplate( CCOLLADATemplate* in_pDecl );
00057     SI_Void SetInputSemantics ( CdotXSITemplates* in_pTemplates );
00058 
00059 private:
00060     CCOLLADATemplate* m_pAttributeArrayTemplate;
00061     CCOLLADATemplate *m_accessor ;
00062     CCOLLADATemplate*   m_pVertexDeclarationTemplate;
00063     CSIBCString m_szSemantic;
00064 
00065     CdotXSIParam*   m_pCountAttribute;
00066     CdotXSIParam*   m_pIDAttribute;
00067 
00068     CdotXSIParam*   m_pInnerCountAttribute;
00069     CdotXSIParam*   m_pStrideCountAttribute;
00070     CdotXSIParam*   m_pSourceIDAttribute;
00071 
00072     CdotXSIParam*   m_pMainID;
00073     CdotXSIParam*   m_pAttribArray;
00074 };
00075 
00076 #endif