1 /*
2     Copyright (c) 2008-2009 NetAllied Systems GmbH
3 
4     This file is part of MayaDataModel.
5 
6     Licensed under the MIT Open Source License,
7     for details please see LICENSE file or the website
8     http://www.opensource.org/licenses/mit-license.php
9 */
10 #ifndef __MayaDM_FOURBYFOURMATRIX_H__
11 #define __MayaDM_FOURBYFOURMATRIX_H__
12 #include "MayaDMTypes.h"
13 #include "MayaDMConnectables.h"
14 #include "MayaDMDependNode.h"
15 namespace MayaDM
16 {
17 class FourByFourMatrix : public DependNode
18 {
19 public:
20 public:
21 
FourByFourMatrix()22 	FourByFourMatrix():DependNode(){}
23 	FourByFourMatrix(FILE* file,const std::string& name,const std::string& parent="",bool shared=false,bool create=true)
24 		:DependNode(file, name, parent, "fourByFourMatrix", shared, create){}
~FourByFourMatrix()25 	virtual ~FourByFourMatrix(){}
26 
setIn00(double i00)27 	void setIn00(double i00)
28 	{
29 		if(i00 == 1.0) return;
30 		fprintf(mFile,"\tsetAttr \".i00\" %f;\n", i00);
31 	}
setIn01(double i01)32 	void setIn01(double i01)
33 	{
34 		if(i01 == 0.0) return;
35 		fprintf(mFile,"\tsetAttr \".i01\" %f;\n", i01);
36 	}
setIn02(double i02)37 	void setIn02(double i02)
38 	{
39 		if(i02 == 0.0) return;
40 		fprintf(mFile,"\tsetAttr \".i02\" %f;\n", i02);
41 	}
setIn03(double i03)42 	void setIn03(double i03)
43 	{
44 		if(i03 == 0.0) return;
45 		fprintf(mFile,"\tsetAttr \".i03\" %f;\n", i03);
46 	}
setIn10(double i10)47 	void setIn10(double i10)
48 	{
49 		if(i10 == 0.0) return;
50 		fprintf(mFile,"\tsetAttr \".i10\" %f;\n", i10);
51 	}
setIn11(double i11)52 	void setIn11(double i11)
53 	{
54 		if(i11 == 1.0) return;
55 		fprintf(mFile,"\tsetAttr \".i11\" %f;\n", i11);
56 	}
setIn12(double i12)57 	void setIn12(double i12)
58 	{
59 		if(i12 == 0.0) return;
60 		fprintf(mFile,"\tsetAttr \".i12\" %f;\n", i12);
61 	}
setIn13(double i13)62 	void setIn13(double i13)
63 	{
64 		if(i13 == 0.0) return;
65 		fprintf(mFile,"\tsetAttr \".i13\" %f;\n", i13);
66 	}
setIn20(double i20)67 	void setIn20(double i20)
68 	{
69 		if(i20 == 0.0) return;
70 		fprintf(mFile,"\tsetAttr \".i20\" %f;\n", i20);
71 	}
setIn21(double i21)72 	void setIn21(double i21)
73 	{
74 		if(i21 == 0.0) return;
75 		fprintf(mFile,"\tsetAttr \".i21\" %f;\n", i21);
76 	}
setIn22(double i22)77 	void setIn22(double i22)
78 	{
79 		if(i22 == 1.0) return;
80 		fprintf(mFile,"\tsetAttr \".i22\" %f;\n", i22);
81 	}
setIn23(double i23)82 	void setIn23(double i23)
83 	{
84 		if(i23 == 0.0) return;
85 		fprintf(mFile,"\tsetAttr \".i23\" %f;\n", i23);
86 	}
setIn30(double i30)87 	void setIn30(double i30)
88 	{
89 		if(i30 == 0.0) return;
90 		fprintf(mFile,"\tsetAttr \".i30\" %f;\n", i30);
91 	}
setIn31(double i31)92 	void setIn31(double i31)
93 	{
94 		if(i31 == 0.0) return;
95 		fprintf(mFile,"\tsetAttr \".i31\" %f;\n", i31);
96 	}
setIn32(double i32)97 	void setIn32(double i32)
98 	{
99 		if(i32 == 0.0) return;
100 		fprintf(mFile,"\tsetAttr \".i32\" %f;\n", i32);
101 	}
setIn33(double i33)102 	void setIn33(double i33)
103 	{
104 		if(i33 == 1.0) return;
105 		fprintf(mFile,"\tsetAttr \".i33\" %f;\n", i33);
106 	}
getIn00()107 	void getIn00()const
108 	{
109 		fprintf(mFile,"\"%s.i00\"",mName.c_str());
110 	}
getIn01()111 	void getIn01()const
112 	{
113 		fprintf(mFile,"\"%s.i01\"",mName.c_str());
114 	}
getIn02()115 	void getIn02()const
116 	{
117 		fprintf(mFile,"\"%s.i02\"",mName.c_str());
118 	}
getIn03()119 	void getIn03()const
120 	{
121 		fprintf(mFile,"\"%s.i03\"",mName.c_str());
122 	}
getIn10()123 	void getIn10()const
124 	{
125 		fprintf(mFile,"\"%s.i10\"",mName.c_str());
126 	}
getIn11()127 	void getIn11()const
128 	{
129 		fprintf(mFile,"\"%s.i11\"",mName.c_str());
130 	}
getIn12()131 	void getIn12()const
132 	{
133 		fprintf(mFile,"\"%s.i12\"",mName.c_str());
134 	}
getIn13()135 	void getIn13()const
136 	{
137 		fprintf(mFile,"\"%s.i13\"",mName.c_str());
138 	}
getIn20()139 	void getIn20()const
140 	{
141 		fprintf(mFile,"\"%s.i20\"",mName.c_str());
142 	}
getIn21()143 	void getIn21()const
144 	{
145 		fprintf(mFile,"\"%s.i21\"",mName.c_str());
146 	}
getIn22()147 	void getIn22()const
148 	{
149 		fprintf(mFile,"\"%s.i22\"",mName.c_str());
150 	}
getIn23()151 	void getIn23()const
152 	{
153 		fprintf(mFile,"\"%s.i23\"",mName.c_str());
154 	}
getIn30()155 	void getIn30()const
156 	{
157 		fprintf(mFile,"\"%s.i30\"",mName.c_str());
158 	}
getIn31()159 	void getIn31()const
160 	{
161 		fprintf(mFile,"\"%s.i31\"",mName.c_str());
162 	}
getIn32()163 	void getIn32()const
164 	{
165 		fprintf(mFile,"\"%s.i32\"",mName.c_str());
166 	}
getIn33()167 	void getIn33()const
168 	{
169 		fprintf(mFile,"\"%s.i33\"",mName.c_str());
170 	}
getOutput()171 	void getOutput()const
172 	{
173 		fprintf(mFile,"\"%s.o\"",mName.c_str());
174 	}
175 protected:
176 	FourByFourMatrix(FILE* file,const std::string& name,const std::string& parent,const std::string& nodeType,bool shared=false,bool create=true)
DependNode(file,name,parent,nodeType,shared,create)177 		:DependNode(file, name, parent, nodeType, shared, create) {}
178 
179 };
180 }//namespace MayaDM
181 #endif//__MayaDM_FOURBYFOURMATRIX_H__
182