MCPcopy Create free account
hub / github.com/carbonengine/trinity / InitializeParametersFromGState

Method InitializeParametersFromGState

trinity/Tr2GStateAnimation.cpp:151–193  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

149}
150
151void Tr2GStateAnimation::InitializeParametersFromGState()
152{
153 // Get Top level nodes
154 auto top_node_names = GetTopLevelParameterNodeNames();
155
156 // Loop all the parameters nodes(parents) in the GState
157 for( auto node_name = top_node_names.cbegin(); node_name != top_node_names.cend(); node_name++ )
158 {
159 // Get list of parameters in there
160 auto params = GetParameters( *node_name );
161
162 // Loop all the parameters in the parameter node(parent)
163 for( auto param_name = params.cbegin(); param_name != params.cend(); param_name++ )
164 {
165 auto param = GetParameterObjectByName( *node_name, *param_name );
166 auto value = GetParameterByName( *node_name, *param_name );
167 if( !param )
168 {
169 // creating the parameter and storing it in the list
170 Tr2GStateParameterPtr mytest;
171 mytest.CreateInstance();
172 mytest->SetValue( value );
173 mytest->SetName( *param_name );
174 mytest->SetNodeName( *node_name );
175 m_gStateParameterList.Append( mytest );
176
177 Tr2GStateParameterPtr default_param;
178 default_param.CreateInstance();
179 default_param->SetValue( value );
180 default_param->SetName( *param_name );
181 default_param->SetNodeName( *node_name );
182 m_gStateParameterDefaultList.Append( default_param );
183 }
184
185 // cache index
186 auto index = GetParameterIndexByName( *node_name, *param_name );
187 if( index > -1 )
188 {
189 m_gStateParameterCachedList[{ *node_name, *param_name }] = index;
190 }
191 }
192 }
193}
194
195
196bool Tr2GStateAnimation::Initialize()

Callers

nothing calls this directly

Calls 5

CreateInstanceMethod · 0.80
SetNodeNameMethod · 0.80
AppendMethod · 0.80
SetValueMethod · 0.45
SetNameMethod · 0.45

Tested by

no test coverage detected