FXTree.h

Go to the documentation of this file.
00001 //***************************************************************************************
00002 // File supervisor: Crosswalk team
00012 //***************************************************************************************
00013 
00014 #ifndef _FXTREE_H
00015 #define _FXTREE_H
00016 
00017 #include "Template.h"
00018 
00019 class CSLFXOperator;
00020 
00026 class XSIEXPORT CSLFXTree
00027     : public CSLTemplate
00028 {
00029 public:
00030 
00037     CSLFXTree(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
00038 
00040     virtual ~CSLFXTree();
00041 
00045     SI_Error Synchronize();
00046 
00050     ETemplateType Type(){ return XSI_FXTREE; }
00051 
00056     virtual CSLAnimatableType*      ParameterFromName(SI_Char *in_szName);
00057 
00059     // FXOperators Functionality //////////////////////////////////////////////////
00061 
00065     CSLFXOperator* AddFXOperator();
00066 
00071     SI_Error RemoveFXOperator( SI_Int in_nIndex );
00072 
00077     SI_Error RemoveFXOperator( CSLFXOperator* in_pToRemove );
00078 
00082     SI_Error ClearFXOperators();
00083 
00088     CSLFXOperator* ConnectFXOperator( CSLFXOperator* in_pToConnect );
00089 
00093     CSLFXOperator** GetFXOperatorList();
00094 
00098     SI_Int GetFXOperatorCount();
00099 
00104     virtual CSLFXOperator* FindFXOperator(SI_Char *in_szName);
00105 
00106 private:
00107     CSIBCArray<CSLFXOperator*> m_FXOperators;
00108 
00109     SI_Void *m_pReserved;
00110 };
00111 
00112 #endif