37 #include <Inventor/misc/SoNotification.h> 52 static void initClass(
void);
53 static void initClasses(
void);
54 static void cleanupClass(
void);
56 void setIgnored(SbBool ignore);
57 SbBool isIgnored(
void)
const;
59 void setDefault(SbBool defaultVal);
60 SbBool isDefault(
void)
const;
62 virtual SoType getTypeId(
void)
const = 0;
64 static SoType getClassTypeId(
void);
65 SbBool isOfType(
const SoType type)
const;
67 void enableConnection(SbBool flag);
68 SbBool isConnectionEnabled(
void)
const;
72 SbBool notnotify = FALSE, SbBool append = FALSE);
73 SbBool appendConnection(
SoEngineOutput * master, SbBool notnotify = FALSE);
75 SbBool isConnectedFromEngine(
void)
const;
79 SbBool connectFrom(
SoField * master,
80 SbBool notnotify = FALSE, SbBool append = FALSE);
81 SbBool appendConnection(
SoField * master, SbBool notnotify = FALSE);
82 void disconnect(
SoField * field);
83 SbBool isConnectedFromField(
void)
const;
84 SbBool getConnectedField(
SoField *& master)
const;
85 int getNumConnections(
void)
const;
86 int getForwardConnections(
SoFieldList & slavelist)
const;
89 void disconnect(
void);
90 SbBool isConnected(
void)
const;
95 SbBool
set(
const char * valuestring);
98 SbBool shouldWrite(
void)
const;
100 virtual void touch(
void);
101 virtual void startNotify(
void);
103 SbBool enableNotify(SbBool on);
104 SbBool isNotifyEnabled(
void)
const;
109 int operator ==(
const SoField & f)
const;
110 int operator !=(
const SoField & f)
const;
112 virtual void connectionStatusChanged(
int numconnections);
113 SbBool isReadOnly(
void)
const;
114 virtual SbBool isSame(
const SoField & f)
const = 0;
115 virtual void copyFrom(
const SoField & f) = 0;
117 virtual void fixCopy(SbBool copyconnections);
118 virtual SbBool referencesCopy(
void)
const;
119 void copyConnection(
const SoField * fromfield);
124 virtual void countWriteRefs(
SoOutput * out)
const;
134 void setFieldType(
int type);
135 int getFieldType(
void)
const;
137 SbBool getDirty(
void)
const;
138 void setDirty(SbBool dirty);
141 if ((this->statusbits & (FLAG_EXTSTORAGE|FLAG_NEEDEVALUATION)) ==
142 (FLAG_EXTSTORAGE|FLAG_NEEDEVALUATION)) this->evaluateField();
148 void valueChanged(SbBool resetdefault = TRUE);
149 virtual void evaluateConnection(
void)
const;
150 virtual SbBool readValue(
SoInput * in) = 0;
151 virtual void writeValue(
SoOutput * out)
const = 0;
152 virtual SbBool readConnection(
SoInput * in);
153 virtual void writeConnection(
SoOutput * out)
const;
155 SbBool isDestructing(
void)
const;
162 FLAG_TYPEMASK = 0x0007,
163 FLAG_ISDEFAULT = 0x0008,
164 FLAG_IGNORE = 0x0010,
165 FLAG_EXTSTORAGE = 0x0020,
166 FLAG_ENABLECONNECTS = 0x0040,
167 FLAG_NEEDEVALUATION = 0x0080,
168 FLAG_READONLY = 0x0100,
169 FLAG_DONOTIFY = 0x0200,
170 FLAG_ISDESTRUCTING = 0x0400,
171 FLAG_ISEVALUATING = 0x0800,
172 FLAG_ISNOTIFIED = 0x1000
175 void evaluateField(
void)
const;
176 void extendStorageIfNecessary(
void);
182 static SoType classTypeId;
185 enum FileFormatFlags {
189 ALLFILEFLAGS = IGNORED|CONNECTED|DEFAULT
192 SbBool changeStatusBits(
const unsigned int bits,
const SbBool onoff);
193 void clearStatusBits(
const unsigned int bits);
194 void setStatusBits(
const unsigned int bits);
195 SbBool getStatus(
const unsigned int bits)
const;
196 unsigned int statusbits;
199 class SoConnectStorage * storage;
202 SbBool hasExtendedStorage(
void)
const;
206 #ifndef COIN_INTERNAL 208 #include <Inventor/fields/SoSField.h> 209 #include <Inventor/fields/SoMField.h> 210 #endif // !COIN_INTERNAL 212 #endif // !COIN_SOFIELD_H The SoBase class is the top-level superclass for a number of class-hierarchies.
Definition: SoBase.h:45
The SoOutput class is an abstraction of an output stream.
Definition: SoOutput.h:51
The SoNotRec class specifies records for notification lists.
Definition: SoNotRec.h:42
The SoFieldContainer class is a base class for all classes that contain fields.
Definition: SoFieldContainer.h:43
The SoField class is the top-level abstract base class for fields.
Definition: SoField.h:47
The SoFieldConverter class is the abstract base class for field converters.
Definition: SoFieldConverter.h:41
void evaluate(void) const
Definition: SoField.h:140
The SoEngineOutput class is the output slots in SoEngine instances.
Definition: SoEngineOutput.h:45
The SoFieldList class is a container for pointers to SoField objects.
Definition: SoFieldList.h:40
The SbString class is a string class with convenience functions for string operations.
Definition: SbString.h:52
The SoNotList class is a list of SoNotRec notification records.
Definition: SoNotification.h:43
The SoType class is the basis for the run-time type system in Coin.
Definition: SoType.h:59
The SbName class stores strings by reference.
Definition: SbName.h:40
Type
Definition: SoNotRec.h:44