00001 //*************************************************************************************** 00002 // 00003 // File supervisor: Softimage 3D Games & 3D Bridge team 00004 // 00005 // (c) Copyright 2001-2002 Avid Technology, Inc. . All rights reserved. 00006 // 00007 //*************************************************************************************** 00008 00009 /**************************************************************************************** 00010 THIS CODE IS PUBLISHED AS A SAMPLE ONLY AND IS PROVIDED "AS IS". 00011 IN NO EVENT SHALL SOFTIMAGE, AVID TECHNOLOGY, INC. AND/OR THEIR RESPECTIVE 00012 SUPPLIERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY 00013 DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 00014 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 00015 CONNECTION WITH THE USE OR PERFORMANCE OF THIS CODE . 00016 00017 COPYRIGHT NOTICE. Copyright © 1999-2002 Avid Technology Inc. . All rights reserved. 00018 00019 SOFTIMAGE is a registered trademark of Avid Technology Inc. or its subsidiaries 00020 or divisions. Windows NT is a registered trademark of Microsoft Corp. All other 00021 trademarks contained herein are the property of their respective owners. 00022 ****************************************************************************************/ 00023 00024 #ifndef _SL_BYTE_H 00025 #define _SL_BYTE_H 00026 00027 #include "AnimatableType.h" // CSLAnimatableType 00028 class CCOLLADATemplate; 00029 class CSLCOLLADAScene; 00030 00032 class XSIEXPORT CSLByteProxy : public CSLAnimatableType 00033 { 00034 public: 00039 CSLByteProxy(CdotXSITemplate *in_pTemplate, SI_Int in_nIndex ); 00040 00045 CSLByteProxy& operator =(const CSLByteProxy &in_Value); 00046 00051 CSLByteProxy& operator =(const SI_Byte &in_Value); 00052 00057 SI_Bool operator ==(const CSLByteProxy &in_ToCompare); 00058 00063 SI_Bool operator ==(const SI_Byte &in_ToCompare); 00064 00066 operator SI_Byte(); 00067 00071 virtual EElementType Type(); 00072 00076 virtual SI_Float GetFloatValue(); 00077 00081 virtual SI_Void SetFloatValue(SI_Float in_fValue); 00082 00088 virtual SI_Error Connect (CdotXSITemplate *in_pTemplate, SI_Int in_nIndex ); 00089 00090 private: 00091 CSLByteProxy( CSLByteProxy &in_pBasicType ){} 00092 SI_Byte* m_pValue; 00093 }; 00094 00096 00098 class XSIEXPORT CSLUByteProxy : public CSLAnimatableType 00099 { 00100 public: 00105 CSLUByteProxy(CdotXSITemplate *in_pTemplate, SI_Int in_nIndex ); 00106 00111 CSLUByteProxy& operator =(const CSLUByteProxy &in_Value); 00112 00117 CSLUByteProxy& operator =(const SI_UByte &in_Value); 00118 00123 SI_Bool operator ==(const CSLUByteProxy &in_ToCompare); 00124 00129 SI_Bool operator ==(const SI_UByte &in_ToCompare); 00130 00132 operator SI_UByte(); 00133 00137 virtual EElementType Type(); 00138 00142 virtual SI_Float GetFloatValue(); 00143 00147 virtual SI_Void SetFloatValue(SI_Float in_fValue); 00148 00154 virtual SI_Error Connect (CdotXSITemplate *in_pTemplate, SI_Int in_nIndex ); 00155 00156 private: 00157 CSLUByteProxy( CSLUByteProxy &in_pBasicType ){} 00158 SI_UByte* m_pValue; 00159 }; 00160 00161 #endif