10 #ifndef __OP_NodeFlags_h__
11 #define __OP_NodeFlags_h__
23 #define OP_BYPASS_FLAG 'b'
24 #define OP_COLORDEFAULT_FLAG 'F'
25 #define OP_COMPRESS_FLAG 'c'
26 #define OP_CURRENT_FLAG 'C'
27 #define OP_DISPLAY_FLAG 'd'
28 #define OP_EXPOSE_FLAG 'e'
29 #define OP_FOOTPRINT_FLAG 'f'
30 #define OP_HIGHLIGHT_FLAG 'h'
31 #define OP_LOCK_FLAG 'l'
32 #define OP_SOFT_LOCK_FLAG 'K'
33 #define OP_OUTPUTFORVIEW_FLAG 'O'
34 #define OP_PICK_FLAG 'p'
35 #define OP_DESCRIPTIVENAME_FLAG 'P'
36 #define OP_DISPLAYCOMMENT_FLAG 'Y'
37 #define OP_RENDER_FLAG 'r'
38 #define OP_SAVEDATA_FLAG 's'
39 #define OP_TEMPLATE_FLAG 't'
40 #define OP_UNLOAD_FLAG 'u'
41 #define OP_VISIBLE_FLAG 'V'
42 #define OP_XRAY_FLAG 'y'
44 #define OP_MODELED_FLAG 'm'
45 #define OP_END_FLAG 'E'
46 #define OP_ORIGIN_FLAG 'x'
48 #define OP_FLAG_ON " on"
49 #define OP_FLAG_OFF " off"
51 #define SET_FLAG_STRING(str_val, flag_val) \
52 str_val = (flag_val) ? OP_FLAG_ON : OP_FLAG_OFF
67 static const char *getFlagName(
uchar token);
69 static const uchar *getTakeFlagTokens();
70 static bool isTakeFlag(
uchar token);
75 static bool isSubjectToStdPermissions(
uchar token);
76 static bool isSubjectToAssetPermissions(
uchar token);
79 { myRecursion =
val; }
81 {
return myRecursion; }
84 { myUndoComment = on_off; }
86 { myUndoInput = on_off; }
88 { myUndoLayout = on_off; }
90 { myUndoDelScript = on_off; }
92 { myUndoPreTransform = on_off; }
94 { myUndoFlagChange = on_off; }
96 { myColorDefault = on_off; }
98 { myCompress = on_off; }
100 { myDisplayDescriptiveName = on_off; }
102 { myDisplayComment = on_off; }
104 { myAlwaysCook = on_off; }
106 { myUnload = on_off; }
108 { myForceCook = on_off; }
110 { myHasCookedData = on_off; }
112 { myTimeDep = on_off; }
114 { myCooking = on_off; }
116 { myDisplay = on_off; }
118 { myRender = on_off; }
120 { myHighlight = on_off; }
122 { myTemplate = on_off; }
124 { myFootprint = on_off; }
128 { myBypass = on_off; }
130 { myPicked = on_off; }
132 { myEditPicked = on_off; }
134 { myLockState = on_off ? OP_HARD_LOCKED : OP_UNLOCKED; }
136 { myLockState = on_off ? OP_SOFT_LOCKED : OP_UNLOCKED; }
138 { myLockState = state; }
140 { myModified = on_off; }
142 { myExpose = on_off; }
144 { mySaveBypass = on_off; }
146 { mySaveData = on_off; }
148 { myOutputForView = output; }
153 { myTimeInterest = on_off; }
155 { myTimeInterestCook = on_off; }
157 { myClearDependency = on_off; }
160 {
return myUndoComment; }
162 {
return myUndoInput; }
164 {
return myUndoLayout; }
166 {
return myUndoDelScript; }
168 {
return myUndoPreTransform; }
170 {
return myUndoFlagChange; }
172 {
return myColorDefault; }
174 {
return myCompress; }
176 {
return myDisplayDescriptiveName; }
178 {
return myDisplayComment; }
180 {
return myAlwaysCook; }
184 {
return myForceCook; }
186 {
return myHasCookedData; }
188 {
return myTimeDep; }
190 {
return myCooking; }
192 {
return myDisplay; }
196 {
return myHighlight; }
198 {
return myTemplate; }
200 {
return myFootprint; }
208 {
return myEditPicked; }
210 {
return myLockState == OP_HARD_LOCKED; }
212 {
return myLockState == OP_SOFT_LOCKED; }
214 {
return myLockState != OP_UNLOCKED; }
216 {
return myLockState; }
218 {
return myModified; }
222 {
return mySaveBypass; }
224 {
return mySaveData; }
226 {
return myTimeInterest; }
228 {
return myTimeInterestCook; }
230 {
return myClearDependency; }
232 {
return myOutputForView; }
234 void clearAllTakeFlags();
236 void setTakeFlag(
uchar which,
bool v);
237 bool getTakeFlag(
uchar which)
const;
239 void setTakeValue(
uchar which,
bool v);
240 bool getTakeValue(
uchar which)
const;
243 { myHasTakeData = on_off; }
245 {
return myHasTakeData; }
248 {
return myTakeDisplay; }
250 {
return myTakeRender; }
252 {
return myTakeTemplate; }
254 {
return myTakeExpose; }
256 {
return myTakeBypass; }
258 {
return myTakePick; }
260 {
return myTakeCurrent; }
263 {
return myInterrupted; }
265 { myInterrupted =
f; }
267 {
return myDescendantInterrupted; }
269 { myDescendantInterrupted =
f; }
271 {
return myClearingInterrupt; }
273 { myClearingInterrupt =
f; }
283 myExtraLabel = labels;
286 bool getExtraVal(
char a)
const;
287 void setExtraVal(
char a,
bool on_off);
290 void appendCommandString(std::ostream &os,
292 bool save_to_hip)
const;
293 void getFlagOptions(
UT_String &options)
const;
296 {
return myLastTimeDep;}
298 { myLastTimeDep = myTimeDep;}
308 OP_LockTypes myLockState;
315 int8 myOutputForView;
325 myDisplayDescriptiveName:1,
341 mutable bool myRecursion;
342 bool myHasCookedData;
346 bool myHasTakeData:1,
356 bool myInterrupted:1;
358 bool myDescendantInterrupted:1;
360 bool myClearingInterrupt:1;
367 myUndoPreTransform:1,
371 myTimeInterestCook:1,
376 friend class OP_UndoFlag;
380 myExtraLabel(nullptr)
383 { shallowCopy(source); }
391 void save(std::ostream &os,
393 bool forundo =
false);
396 bool loadAsciiFlag(
const char *
name,
const char *
val);
397 bool loadBinaryFlag(
int tag,
int val);
403 const char **myExtraLabel;
404 unsigned int myExtraVal;
void setHasCookedData(bool on_off)
bool getEditPicked() const
bool getUndoInput() const
void setFootprint(bool on_off)
void setModified(bool on_off)
void setHasTakeData(bool on_off)
bool getTakeTemplate() const
int8 getOutputForView() const
bool getTakeDisplay() const
bool getTakeRender() const
bool getSoftLocked() const
void setClearingInterrupt(bool f)
const GLuint GLenum const void * binary
GLsizei const GLchar *const * path
void setTimeInterestCook(bool on_off)
void setTemplate(bool on_off)
OP_NodeFlagData(int f, int v)
void setDisplay(bool on_off)
GLboolean GLboolean GLboolean GLboolean a
bool getClearingInterrupt() const
void setPicked(bool on_off)
bool getTakeExpose() const
bool getTimeInterest() const
void setColorDefault(bool on_off)
bool getColorDefault() const
bool getDescendantInterrupted() const
bool getClearDependency() const
void setExpose(bool on_off)
void setUndoLayout(bool on_off)
bool getUndoComment() const
bool getAlwaysCook() const
void setDisplayDescriptiveName(bool on_off)
void setHardLocked(bool on_off)
void setUndoFlagChange(bool on_off)
bool getSaveBypass() const
void setRender(bool on_off)
void setTimeInterest(bool on_off)
void setHighlight(bool on_off)
bool getDisplayComment() const
void setUndoPreTransform(bool on_off)
void setDisplayComment(bool on_off)
void setUndoInput(bool on_off)
void setRecursion(bool val) const
bool getUndoLayout() const
void setExtra(const char *opts, int val, const char **labels)
void setClearDependency(bool on_off)
void setEditPicked(bool on_off)
const char * getExtra() const
bool getHasCookedData() const
GLsizei GLsizei GLchar * source
bool getHardLocked() const
void setDescendantInterrupted(bool f)
void setSaveData(bool on_off)
bool getUndoPreTransform() const
GLuint const GLchar * name
bool getForceCook() const
bool getTimeInterestCook() const
bool getFootprint() const
void setSaveBypass(bool on_off)
OP_LockTypes getLockState() const
void setOutputForView(int8 output)
void setUndoDelScript(bool on_off)
void setForceCook(bool on_off)
bool getHasTakeData() const
bool getTakeCurrent() const
Create an evaluation context scope with a new node.
bool getUndoFlagChange() const
bool getRecursion() const
void setTimeDep(bool on_off)
void setSoftLocked(bool on_off)
void setAlwaysCook(bool on_off)
LeafData & operator=(const LeafData &)=delete
void setBypass(bool on_off)
bool getDisplayDescriptiveName() const
void setInterrupted(bool f)
bool getUndoDelScript() const
bool getTakeBypass() const
void setUndoComment(bool on_off)
bool getInterrupted() const
bool getHighlight() const
bool getLastTimeDep() const
void setLockState(OP_LockTypes state)
void setCompress(bool on_off)
void setUnload(bool on_off)
void setCooking(bool on_off)
void setXray(bool on_off)