104virtualconstchar* what(){return"The reference required has already beed disposed in this context.\n";}
105 };
106
107class invalidImportException : public saiException
108 {
109public:
110 invalidImportException()
111 {
112 m_nErrorCode = SAI_IMPORTED_NODE;
113 }
114
115virtualconstchar* what(){return"An operation was attempted that used an imported node when it is not permitted.\n";}
116 };
117
118class insufficientCapabilitiesException : public saiException
119 {
120public:
121 insufficientCapabilitiesException()
122 {
123 m_nErrorCode = SAI_INSUFFICIENT_CAPABILITIES;
124 }
125
126virtualconstchar* what(){return"Cannot add a node to an execution context that is greater than the capabilities defined by the profile and components definition for the scene.\n";}
127 };
128
129class invalidAccessTypeException : public saiException
130 {
131public:
132 invalidAccessTypeException()
133 {
134 m_nErrorCode = SAI_INVALID_ACCESS_TYPE;
135 }
136
137virtualconstchar* what(){return"Cannot perform the requested operation because it is an invalid action for this field type.\n";}
138 };
139
140class invalidBrowserException : public disposedException
141 {
142public:
143 invalidBrowserException()
144 {
145 m_nErrorCode = SAI_INVALID_BROWSER;
146 }
147
148virtualconstchar* what(){return"The Browser service requested has been disposed of prior to this request.\n";}
149 };
150
151class invalidDocumentException : public saiException
152 {
153public:
154 invalidDocumentException()
155 {
156 m_nErrorCode = SAI_INVALID_DOCUMENT;
157 }
158
159virtualconstchar* what(){return"The document structure is not compliant with X3D DOM.\n";}
160 };
161
162class invalidOperationTimingException : public saiException
163 {
164public:
165 invalidOperationTimingException()
166 {
167 m_nErrorCode = SAI_INVALID_OPERATION_TIMING;
168 }
169
170virtualconstchar* what(){return"The user is attempting to make a service request that is performed outside of the context that such operations are permitted in.\n";}
171 };
172
173class invalidUrlException : public saiException
174 {
175public:
176 invalidUrlException()
177 {
178 m_nErrorCode = SAI_INVALID_URL;
179 }
180
181virtualconstchar* what(){return"Syntax Error: the url specified is not correct.\n";}
182 };
183
184class invalidX3DException : public saiException
185 {
186public:
187 invalidX3DException()
188 {
189 m_nErrorCode = SAI_INVALID_X3D;
190 }
191
192virtualconstchar* what(){return"Syntax Error: the X3D document requested or specified is not correct.\n";}
193 };
194
195class nodeUnavailableException : public saiException
196 {
197public:
198 nodeUnavailableException()
199 {
200 m_nErrorCode = SAI_NODE_NOT_AVAILABLE;
201 }
202
203virtualconstchar* what(){return"The imported node requested has not yet been verified for export.\n";}
214virtualconstchar* what(){return"A named node handling action has attempted to re-use a name that is already defined elsewhere in this current scene.\n "
215"Or the node, or one of its children, is currently in use in another scene.\n";}
216 };
217
218class browserNotSharedException : public saiException
219 {
220public:
221 browserNotSharedException()
222 {
223 m_nErrorCode = SAI_NOT_SHARED;
224 }
225
226virtualconstchar* what(){return"A service request was made that assumed the browser was currently participating in a shared scene graph when it was not.\n";}
227 };
228
229class notSupportedException : public saiException
230 {
231public:
232 notSupportedException()
233 {
234 m_nErrorCode = SAI_NOT_SUPPORTED;
235 }
236
237virtualconstchar* what(){return"The service request is not supported.\n";}
238 };
239
240class urlUnavailableException : public saiException
241 {
242public:
243 urlUnavailableException()
244 {
245 m_nErrorCode = SAI_URL_UNAVAILABLE;
246 }
247
248virtualconstchar* what(){return"No valid URL has been specified for this request.\n";}
249 };
250
251//DERIVED FROM disposedException
252
253class invalidExecutionContextException : public disposedException
254 {
255public:
256 invalidExecutionContextException()
257 {
258 m_nErrorCode = SAI_INVALID_EXECUTION_CONTEXT;
259 }
260
261virtualconstchar* what(){return"The execution context requested has been disposed of prior to this request.\n";}
262 };
263
264class invalidFieldException : public disposedException
265 {
266public:
267 invalidFieldException()
268 {
269 m_nErrorCode = SAI_INVALID_FIELD;
270 }
271
272virtualconstchar* what(){return"The requested field has been disposed of prior to this request.\n";}
273 };
274
275class invalidNodeException : public disposedException
276 {
277public:
278 invalidNodeException()
279 {
280 m_nErrorCode = SAI_INVALID_NODE;
281 }
282
283virtualconstchar* what(){return"The requested node has been disposed of prior to this request.\n";}
284 };
285
286//OTHER DERIVED EXCEPTION
287class InvalidWritableFieldException : public invalidFieldException, public invalidAccessTypeException