27 #include <Inventor/SoType.h>
28 #include <Inventor/misc/SoNotification.h>
43 static void initClass(
void);
44 static void initClasses(
void);
46 void setIgnored(SbBool ignore);
47 SbBool isIgnored(
void)
const;
49 void setDefault(SbBool def);
50 SbBool isDefault(
void)
const;
54 static SoType getClassTypeId(
void);
55 SbBool isOfType(
const SoType type)
const;
57 void enableConnection(SbBool flag);
58 SbBool isConnectionEnabled(
void)
const;
62 SbBool notnotify = FALSE, SbBool append = FALSE);
63 SbBool appendConnection(
SoEngineOutput * master, SbBool notnotify = FALSE);
65 SbBool isConnectedFromEngine(
void)
const;
69 SbBool connectFrom(
SoField * master,
70 SbBool notnotify = FALSE, SbBool append = FALSE);
71 SbBool appendConnection(
SoField * master, SbBool notnotify = FALSE);
72 void disconnect(
SoField * field);
73 SbBool isConnectedFromField(
void)
const;
74 SbBool getConnectedField(
SoField *& master)
const;
75 int getNumConnections(
void)
const;
76 int getForwardConnections(
SoFieldList & slavelist)
const;
79 void disconnect(
void);
80 SbBool isConnected(
void)
const;
85 SbBool set(
const char * valuestring);
88 SbBool shouldWrite(
void)
const;
90 virtual void touch(
void);
91 virtual void startNotify(
void);
93 SbBool enableNotify(SbBool on);
94 SbBool isNotifyEnabled(
void)
const;
99 int operator ==(
const SoField & f)
const;
100 int operator !=(
const SoField & f)
const;
102 virtual void connectionStatusChanged(
int numconnections);
103 SbBool isReadOnly(
void)
const;
107 virtual void fixCopy(SbBool copyconnections);
108 virtual SbBool referencesCopy(
void)
const;
109 void copyConnection(
const SoField * fromfield);
114 virtual void countWriteRefs(
SoOutput * out)
const;
124 void setFieldType(
int type);
125 int getFieldType(
void)
const;
127 SbBool getDirty(
void)
const;
128 void setDirty(SbBool dirty);
131 if ((this->statusbits & (FLAG_EXTSTORAGE|FLAG_NEEDEVALUATION)) ==
132 (FLAG_EXTSTORAGE|FLAG_NEEDEVALUATION)) this->evaluateField();
138 void valueChanged(SbBool resetdefault = TRUE);
139 virtual void evaluateConnection(
void)
const;
142 virtual SbBool readConnection(
SoInput * in);
143 virtual void writeConnection(
SoOutput * out)
const;
145 SbBool isDestructing(
void)
const;
150 FLAG_TYPEMASK = 0x0007,
151 FLAG_ISDEFAULT = 0x0008,
152 FLAG_IGNORE = 0x0010,
153 FLAG_EXTSTORAGE = 0x0020,
154 FLAG_ENABLECONNECTS = 0x0040,
155 FLAG_NEEDEVALUATION = 0x0080,
156 FLAG_READONLY = 0x0100,
157 FLAG_DONOTIFY = 0x0200,
158 FLAG_ISDESTRUCTING = 0x0400,
159 FLAG_ISEVALUATING = 0x0800,
160 FLAG_ISNOTIFIED = 0x1000
163 void evaluateField(
void)
const;
164 void extendStorageIfNecessary(
void);
170 static SoType classTypeId;
173 enum FileFormatFlags {
177 ALLFILEFLAGS = IGNORED|CONNECTED|DEFAULT
180 SbBool changeStatusBits(
const unsigned int bits,
const SbBool onoff);
181 void clearStatusBits(
const unsigned int bits);
182 void setStatusBits(
const unsigned int bits);
183 SbBool getStatus(
const unsigned int bits)
const;
184 unsigned int statusbits;
187 class SoConnectStorage * storage;
190 SbBool hasExtendedStorage(
void)
const;
194 #ifndef COIN_INTERNAL
196 #include <Inventor/fields/SoSField.h>
197 #include <Inventor/fields/SoMField.h>
The SbName class stores strings by reference.
Definition: SbName.h:31
The SbString class is a string class with convenience functions for string operations.
Definition: SbString.h:42
The SoEngineOutput class is the output slots in SoEngine instances.
Definition: SoEngineOutput.h:36
The SoFieldContainer class is a base class for all classes that contain fields.
Definition: SoFieldContainer.h:35
The SoFieldConverter class is the abstract base class for field converters.
Definition: SoFieldConverter.h:32
The SoFieldList class is a container for pointers to SoField objects.
Definition: SoFieldList.h:31
The SoField class is the top-level abstract base class for fields.
Definition: SoField.h:38
virtual SbBool isSame(const SoField &f) const =0
void evaluate(void) const
Definition: SoField.h:130
virtual SoType getTypeId(void) const =0
virtual void writeValue(SoOutput *out) const =0
virtual void copyFrom(const SoField &f)=0
virtual SbBool readValue(SoInput *in)=0
The SoNotList class is a list of SoNotRec notification records.
Definition: SoNotification.h:34
Type
Definition: SoNotRec.h:35
The SoOutput class is an abstraction of an output stream.
Definition: SoOutput.h:42
The SoType class is the basis for the run-time type system in Coin.
Definition: SoType.h:50