28 #ifndef __ANIMABLE_H__
29 #define __ANIMABLE_H__
105 { memcpy(mBaseValueReal, val.
ptr(),
sizeof(
Real)*2); }
108 { memcpy(mBaseValueReal, val.
ptr(),
sizeof(
Real)*3); }
111 { memcpy(mBaseValueReal, val.
ptr(),
sizeof(
Real)*4); }
114 { memcpy(mBaseValueReal, val.
ptr(),
sizeof(
Real)*4); }
116 virtual void setAsBaseValue(
const Any& val);
120 mBaseValueReal[0] = val.
r;
121 mBaseValueReal[1] = val.
g;
122 mBaseValueReal[2] = val.
b;
123 mBaseValueReal[3] = val.
a;
145 virtual void setCurrentStateAsBaseValue(
void) = 0;
184 virtual void setValue(
const Any& val);
187 virtual void resetToBaseValue(
void);
226 virtual void applyDeltaValue(
const Any& val);
256 if (msAnimableDictionary.find(getAnimableDictionaryName())
257 == msAnimableDictionary.end())
260 initialiseAnimableDictionary(vec);
261 msAnimableDictionary[getAnimableDictionaryName()] = vec;
269 AnimableDictionaryMap::iterator i =
270 msAnimableDictionary.find(getAnimableDictionaryName());
271 if (i != msAnimableDictionary.end())
278 "Animable value list not found for " + getAnimableDictionaryName(),
279 "AnimableObject::getAnimableValueNames");
297 createAnimableDictionary();
299 AnimableDictionaryMap::iterator i =
300 msAnimableDictionary.find(getAnimableDictionaryName());
301 if (i != msAnimableDictionary.end())
308 "Animable value list not found for " + getAnimableDictionaryName(),
309 "AnimableObject::getAnimableValueNames");
323 "No animable value named '" + valueName +
"' present.",
324 "AnimableObject::createAnimableValue");