00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef __MATRIX4X4_H__
00016 #define __MATRIX4X4_H__
00017
00018 #include "SL_Float.h"
00019 #include <SIBCMatrix.h>
00020
00025 class XSIEXPORT CSLMatrix4x4Proxy
00026 {
00027 public:
00028 CSLMatrix4x4Proxy
00029 (
00030 CdotXSITemplate *in_pTemplate,
00031 SI_Long in_lIndex11,
00032 SI_Long in_lIndex12,
00033 SI_Long in_lIndex13,
00034 SI_Long in_lIndex14,
00035 SI_Long in_lIndex21,
00036 SI_Long in_lIndex22,
00037 SI_Long in_lIndex23,
00038 SI_Long in_lIndex24,
00039 SI_Long in_lIndex31,
00040 SI_Long in_lIndex32,
00041 SI_Long in_lIndex33,
00042 SI_Long in_lIndex34,
00043 SI_Long in_lIndex41,
00044 SI_Long in_lIndex42,
00045 SI_Long in_lIndex43,
00046 SI_Long in_lIndex44
00047 );
00048
00050 CSLMatrix4x4Proxy& operator =(const CSIBCMatrix4x4 &in_rMatrix);
00051
00053 operator CSIBCMatrix4x4();
00054
00056 CSLFloatProxy& Element(SI_Long in_lColumn, SI_Long in_lRow);
00057
00058 protected:
00059 CSLFloatProxy m_f11;
00060 CSLFloatProxy m_f12;
00061 CSLFloatProxy m_f13;
00062 CSLFloatProxy m_f14;
00063 CSLFloatProxy m_f21;
00064 CSLFloatProxy m_f22;
00065 CSLFloatProxy m_f23;
00066 CSLFloatProxy m_f24;
00067 CSLFloatProxy m_f31;
00068 CSLFloatProxy m_f32;
00069 CSLFloatProxy m_f33;
00070 CSLFloatProxy m_f34;
00071 CSLFloatProxy m_f41;
00072 CSLFloatProxy m_f42;
00073 CSLFloatProxy m_f43;
00074 CSLFloatProxy m_f44;
00075 };
00076
00077 #endif //__MATRIX4X4_H__