00001 /**************************************************************************************** 00002 THIS CODE IS PUBLISHED AS A SAMPLE ONLY AND IS PROVIDED "AS IS". 00003 IN NO EVENT SHALL SOFTIMAGE, AVID TECHNOLOGY, INC. AND/OR THEIR RESPECTIVE 00004 SUPPLIERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY 00005 DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 00006 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 00007 CONNECTION WITH THE USE OR PERFORMANCE OF THIS CODE . 00008 00009 COPYRIGHT NOTICE. Copyright © 1999-2002 Avid Technology Inc. . All rights reserved. 00010 00011 SOFTIMAGE is a registered trademark of Avid Technology Inc. or its subsidiaries 00012 or divisions. Windows NT is a registered trademark of Microsoft Corp. All other 00013 trademarks contained herein are the property of their respective owners. 00014 ****************************************************************************************/ 00015 00016 #ifndef _XSIUSERDATALIST_H 00017 #define _XSIUSERDATALIST_H 00018 00019 #include "Template.h" 00020 00021 class CSLUserData; 00022 class CSLCluster; 00023 00033 class XSIEXPORT CSLUserDataList 00034 : public CSLTemplate 00035 { 00036 public: 00037 00043 CSLUserDataList(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate); 00044 00046 virtual ~CSLUserDataList(); 00047 00051 ETemplateType Type(){ return XSI_USER_DATA_LIST; } 00052 00056 SI_Error Synchronize(); 00057 00059 // User data functionality /////////////////////////////////////////////// 00061 00065 CSLUserData* AddUserData(); 00066 00071 SI_Error RemoveUserData( SI_Int in_nIndex ); 00072 00077 SI_Error RemoveUserData( CSLUserData* in_pToRemove ); 00078 00082 SI_Error ClearUserDatas(); 00083 00088 CSLUserData* ConnectUserData( CSLUserData* in_pToConnect ); 00089 00093 CSLUserData** GetUserDataList(); 00094 00098 SI_Int GetUserDataCount(); 00099 00104 CSLUserData* FindUserData( SI_Char* in_szUserDataName ); 00105 00106 private: 00107 CSIBCArray<CSLUserData*> m_UserDatas; 00108 00109 SI_Void *m_pReserved; 00110 }; 00111 00112 #endif