XSIMaterialInfo.h

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 _XSIMATERIALINFO_H
00017 #define _XSIMATERIALINFO_H
00018 
00019 #include "Template.h"
00020 
00021 class CSLXSIMaterial;
00022 
00030 class XSIEXPORT CSLXSIMaterialInfo
00031     : public CSLTemplate
00032 {
00033 public:
00034 
00036     enum EWrapType
00037     {
00038         SI_CLAMP,   
00039         SI_REPEAT   
00040     };
00041 
00047     CSLXSIMaterialInfo(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
00048 
00050     virtual ~CSLXSIMaterialInfo();
00051 
00055     ETemplateType Type(){ return XSI_MATERIAL_INFO; }
00056     
00057     virtual CSLAnimatableType* ParameterFromName(SI_Char *in_szName);
00058 
00062     EWrapType GetUWrap();
00063 
00067     SI_Void SetUWrap( EWrapType in_Type );
00068 
00072     EWrapType GetVWrap();
00073 
00077     SI_Void SetVWrap( EWrapType in_Type );
00078 
00079 private:
00080     CSLEnumProxy<EWrapType, SI_REPEAT> m_UWrap;
00081     CSLEnumProxy<EWrapType, SI_REPEAT> m_VWrap;
00082 
00083     SI_Void *m_pReserved;
00084 };
00085 
00086 #endif