MCPcopy Create free account
hub / github.com/MrKepzie/Natron / initForSave

Method initForSave

Engine/KnobSerialization.cpp:110–141  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

108}
109
110void
111ValueSerialization::initForSave(const KnobPtr & knob,
112 int dimension,
113 bool exprHasRetVar,
114 const std::string& expr)
115{
116 _knob = knob;
117 _dimension = dimension;
118 _expression = expr;
119 _exprHasRetVar = exprHasRetVar;
120
121 std::pair< int, KnobPtr > m = knob->getMaster(dimension);
122
123 if ( m.second && !knob->isMastersPersistenceIgnored() ) {
124 _master.masterDimension = m.first;
125 NamedKnobHolder* holder = dynamic_cast<NamedKnobHolder*>( m.second->getHolder() );
126 assert(holder);
127
128 TrackMarker* isMarker = dynamic_cast<TrackMarker*>(holder);
129 if (isMarker) {
130 _master.masterTrackName = isMarker->getScriptName_mt_safe();
131 _master.masterNodeName = isMarker->getContext()->getNode()->getScriptName_mt_safe();
132 } else {
133 // coverity[dead_error_line]
134 _master.masterNodeName = holder ? holder->getScriptName_mt_safe() : "";
135 }
136 _master.masterKnobName = m.second->getName();
137 } else {
138 _master.masterDimension = -1;
139 }
140
141}
142
143void
144ValueSerialization::setChoiceExtraLabel(const std::string& label)

Callers 1

initializeMethod · 0.80

Calls 7

getMasterMethod · 0.80
getNameMethod · 0.80
getHolderMethod · 0.45
getScriptName_mt_safeMethod · 0.45
getNodeMethod · 0.45
getContextMethod · 0.45

Tested by

no test coverage detected