XSITextureLayerPort.h

00001 //***************************************************************************************
00002 //
00003 // File supervisor: Crosswalk team
00004 //
00005 // Copyright 2008 Autodesk, Inc.  All rights reserved.
00006 // Use of this software is subject to the terms of the Autodesk license agreement
00007 // provided at the time of installation or download, or which otherwise accompanies
00008 // this software in either electronic or hard copy form.
00009 //
00010 //***************************************************************************************
00011 #ifndef _XSITEXTURELAYERPORT_H
00012 #define _XSITEXTURELAYERPORT_H
00013 
00014 #include "Template.h"
00015 
00019 class XSIEXPORT CSLXSITextureLayerPort
00020     : public CSLTemplate
00021 {
00022 public:
00028     CSLXSITextureLayerPort(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
00029 
00031     virtual ~CSLXSITextureLayerPort();
00032 
00036     ETemplateType Type(){ return XSI_TEXTURE_LAYER_PORT; }
00037 
00038     virtual CSLAnimatableType* ParameterFromName(SI_Char *in_szName);
00039 
00040     virtual CSLAnimatableType* ParameterFromType(EFCurveType in_Type, SI_Char *in_szParameterName);
00041 
00042 
00046     SI_Char* GetTarget();
00047 
00051     SI_Void SetTarget( SI_Char* in_pValue );
00052 
00056     SI_Bool GetMute();
00057 
00061     SI_Void SetMute( SI_Bool in_bValue );
00062 
00066     SI_Float GetScale();
00067 
00071     SI_Void SetScale( SI_Float in_fValue );
00072 
00076     SI_Int GetColorSource();
00077 
00081     SI_Void SetColorSource( SI_Int in_nValue );
00082 
00086     SI_Bool GetInvert();
00087 
00091     SI_Void SetInvert( SI_Bool in_bValue);
00092 
00093 
00094     CSLStringProxy*                                     GetTargetProxy()        { return &m_Target; };
00095     CSLBoolProxy*                                       GetMuteProxy()          { return &m_Mute; };
00096     CSLFloatProxy*                                      GetScaleProxy()         { return &m_Scale; };
00097     CSLIntProxy*                                        GetColorSourceProxy()   { return &m_ColorSource; };
00098     CSLBoolProxy*                                       GetInvertProxy()        { return &m_Invert; };
00099 
00100 private:
00101     CSLStringProxy  m_Target;
00102     CSLBoolProxy    m_Mute;
00103     CSLFloatProxy   m_Scale;
00104     CSLIntProxy     m_ColorSource;
00105     CSLBoolProxy    m_Invert;
00106 
00107     SI_Void *m_pReserved;
00108 };
00109 
00110 #endif