HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SOP_NodeFlags.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: Flags for a sop (C++)
7  *
8  * COMMENTS:
9  *
10  */
11 
12 #ifndef __SOP_NodeFlags_h__
13 #define __SOP_NodeFlags_h__
14 
15 #include "SOP_API.h"
16 #include <iosfwd>
17 
18 class UT_IStream;
19 
21 {
22 public:
23  SOP_NodeFlags() { setDefaults(); }
25 
26  void setDefaults();
27 
28  void save(std::ostream &os, int binary = 0) const;
29  bool load(UT_IStream &is, const char *path=0);
30 
31  void setInstance(bool onOff) { instance = onOff; }
32  void setNeedGuide1(bool onOff) { needGuide1 = onOff; }
33  void setNeedGuide2(bool onOff) { needGuide2 = onOff; }
34  void setTimeDepGuide1(bool timedep) { timeDepGuide1 = timedep; }
35  void setTimeDepGuide2(bool timedep) { timeDepGuide2 = timedep; }
36  void setManagesDataIDs(bool onOff) { managesDataIDs = onOff; }
37  void setNeedOutputDetail(bool onOff) { needOutputDetail = onOff; }
38 
39  bool getInstance() const { return instance; }
40  bool getNeedGuide1() const { return needGuide1; }
41  bool getNeedGuide2() const { return needGuide2; }
42  bool getTimeDepGuide1() const { return timeDepGuide1; }
43  bool getTimeDepGuide2() const { return timeDepGuide2; }
44  bool getManagesDataIDs() const { return managesDataIDs; }
45 
46  /// If false, the node does not require myGdpHandle to refer
47  /// to a detail before cooking. This is for SOPs that usually
48  /// just instance another node's geometry, like Null, SubNet,
49  /// or Switch.
50  bool getNeedOutputDetail() const { return needOutputDetail; }
51 
52 private:
53  bool instance:1,
54  needGuide1:1,
55  needGuide2:1,
56  managesDataIDs:1,
57  needOutputDetail:1,
58  timeDepGuide1:1,
59  timeDepGuide2:1;
60 };
61 
62 #endif
void setNeedGuide2(bool onOff)
Definition: SOP_NodeFlags.h:33
void setNeedGuide1(bool onOff)
Definition: SOP_NodeFlags.h:32
void setInstance(bool onOff)
Definition: SOP_NodeFlags.h:31
const GLuint GLenum const void * binary
Definition: glcorearb.h:1924
GLsizei const GLchar *const * path
Definition: glcorearb.h:3341
bool getTimeDepGuide2() const
Definition: SOP_NodeFlags.h:43
bool getNeedGuide1() const
Definition: SOP_NodeFlags.h:40
bool getNeedOutputDetail() const
Definition: SOP_NodeFlags.h:50
GLsizei GLsizei GLchar * source
Definition: glcorearb.h:803
bool getNeedGuide2() const
Definition: SOP_NodeFlags.h:41
void setNeedOutputDetail(bool onOff)
Definition: SOP_NodeFlags.h:37
void setManagesDataIDs(bool onOff)
Definition: SOP_NodeFlags.h:36
bool getTimeDepGuide1() const
Definition: SOP_NodeFlags.h:42
bool getInstance() const
Definition: SOP_NodeFlags.h:39
#define SOP_API
Definition: SOP_API.h:10
void setTimeDepGuide1(bool timedep)
Definition: SOP_NodeFlags.h:34
bool getManagesDataIDs() const
Definition: SOP_NodeFlags.h:44
void setTimeDepGuide2(bool timedep)
Definition: SOP_NodeFlags.h:35