Information technology — Computer graphics, image processing and environmental data representation — Extensible 3D (X3D) language bindings —
Part 5:  C#

5 Tables

--- X3D separator bar ---

cube 5.1 Introduction and topics

5.1.1 Introduction

This clause contains tables defining the mapping between abstract names from part 2 of ISO/IEC 19775 to C# names used in this language binding.

5.1.2 Topics

See Table 5.1 for the topics for this clause.

Table 5.1 — Topics in this clause

4.2 Mappings of abstract names to C# binding names

5.2.1 Data types

In Table 5.2, each row lists the abstract name of a data type from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.2 — Data type names listed alphabetically by abstract name

Abstract name C# bound name
SAIAction N/A
SAIBoolean bool
SAIBrowserApp X3DComponent
SAIBrowserName String
SAIBrowserRef Browser
ExternalBrowser
SAIBrowserVersion String
SAIComponent (String, int)
SAIComponentDeclaration ComponentInfo class
SAIEncoding int
SAIExecutionContext X3DExecutionContext
SAIField SAIField
SAIFieldAccess X3DFieldTypes
SAIFieldDeclaration X3DFieldDefinition
SAIFieldName String
SAIFieldType X3DFieldTypes
SAIFieldValue various. Defined by field type. See Table 5.4
SAIFrameRate float
SAILayerID int
SAILoadState X3DLoadStates
SAIMatrix SAIMatrix
SAINavSpeed float
SAINode X3DNode and derived-types
SAINodeType X3DNodeTypes
SAIParameterList String
SAIProfileDeclaration ProfileInfo
SAIPropertyList Map
SAIProtoDeclaration X3DProtoDeclaration
X3DExternProtoDeclaration
SAIRequester Object
SAIRoute X3DRoute
SAIScene X3DScene
SAIScript X3DScriptNode
SAIScriptImplementation X3DScriptImplementation
X3DPerFrameObserverScript
SAIStream Stream
SAIString String
SAIUnitDeclaration X3DUnitDeclaration
SAIURL String
NULL null

5.2.2 Error types

In Table 5.3, each row lists the abstract name of an error type from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.3 — Error type names listed alphabetically by abstract name

Abstract name C# bound name
SAIError X3DException
SAI_BROWSER_UNAVAILABLE NoSuchBrowserException
SAI_CONNECTION_ERROR ConnectionException
SAI_DISPOSED InvalidBrowserException
InvalidExecutionContextException
InvalidNodeException
InvalidRouteException
InvalidProtoException
SAI_IMPORTED_NODE InvalidImportException
SAI_INSUFFICIENT_CAPABILITIES InsufficientCapabilitiesException
SAI_INVALID_ACCESS_TYPE InvalidWritableFieldException
InvalidReadableFieldException
SAI_INVALID_BROWSER InvalidBrowserException
SAI_INVALID_DOCUMENT InvalidDocumentException
SAI_INVALID_EXECUTION_CONTEXT InvalidExecutionContextException
SAI_INVALID_FIELD InvalidFieldException
SAI_INVALID_NAME InvalidNodeException
InvalidNameException
SAI_INVALID_NODE InvalidNodeException
SAI_INVALID_OPERATION_TIMING InvalidOperationTimingException
SAI_INVALID_SCENE InvalidSceneException
SAI_INVALID_URL InvalidURLException
SAI_INVALID_X3D InvalidX3DException
SAI_NODE_NOT_AVAILABLE NodeUnavailableException
SAI_NODE_IN_USE NodeInUseException
SAI_NOT_SHARED BrowserNotSharedException
SAI_NOT_SUPPORTED NotSupportedException
SAI_URL_UNAVAILABLE URLUnavailableException

5.2.3 Event types

In Table 5.4, each row lists the abstract name of an event type from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.4 — Event type names listed alphabetically by abstract name

Abstract name C# bound name
SAI_Browser_Connection_Error CONNECTION_ERROR
SAI_Browser_Event BrowserEvent
SAI_Browser_Initialized INITIALIZED
SAI_Browser_Shutdown SHUTDOWN
SAI_Browser_URL_Error URL_ERROR
SAIFieldEvent X3DFieldEvent

5.2.4 Browser services

In Table 5.5, each row lists the abstract name of a browser service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.5 — Browser services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract name C# bound name
getBrowser ExternalBrowser getBrowser()
ExternalBrowser getBrowser(String, int)
ExternalBrowser getBrowser(String, int)
createBrowser X3DComponent createBrowser(Map)
getName String getName()
getVersion String getVersion()
getCurrentSpeed float getCurrentSpeed()
getCurrentFrameRate float getCurrentFrameRate()
getSupportedProfiles ProfileInfo[] getSupportedProfiles()
getProfile ProfileInfo getProfile(String)
getSupportedComponents ComponentInfo[] getSupportedComponents()
getComponent ComponentInfo getComponent(String, int)
getExecutionContext X3DExecutionContext getExecutionContext()
createScene X3DScene createScene(ProfileInfo, ComponentInfo[])
replaceWorld void replaceWorld(X3DScene)
importDocument X3DScene importDocument(DOMNode)
loadURL void loadURL(String[], Map)
setDescription void setDescription(String)
createX3DFromString X3DScene createX3DFromString(String)
createX3DFromStream X3DScene createX3DFromStream(Stream)
createX3DFromURL X3DScene createX3DFromURL(String[])
updateControl void beginUpdate()
void endUpdate()
registerBrowserInterest void addBrowserListener(BrowserListener) void removeBrowserListener(BrowserListener)
getRenderingProperties Map getRenderingProperties()
getBrowserProperties Map getBrowserProperties()
changeViewpoint void nextViewpoint()
void previousViewpoint()
void firstViewpoint()
void lastViewpoint()
print/println void print(Object)
void println(Object)
dispose void dispose()
setBrowserOption boolean setBrowserOption()

5.2.5 Execution context services

In Table 5.6, each row lists the abstract name of an execution context service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.6 — Execution context services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract name C# bound name
getSpecificationVersion String getSpecificationVersion()
getEncoding int getEncoding()
getProfile ProfileInfo getProfile()
getComponents ComponentInfo[] getComponents()
getUnits String getUnits()
getWorldURL String getWorldURL()
getNode X3DNode getNamedNode(String)
X3DNode getExportedNode(String)
createNode X3DNode createNode(String)
createProto X3DNode createProto(String)
namedNodeHandling void updateNamedNode(String, X3DNode)
void updateImportedNode(String, String, X3DNode)
void removeNamedNode(String)
void removeImportedNode(String)
getProtoDeclaration X3DProtoDeclaration getProtoDeclaration(String)
protoDeclarationHandling void updateProtoDeclaration(String, X3DProtoDeclaration)
void removeProtoDeclaration(String)
getExternProtoDeclaration X3DExternProtoDeclaration getExternProtoDeclaration(String)
externprotoDeclarationHandling void updateExternProtoDeclaration(String, X3DExternProtoDeclaration)
void removeExternProtoDeclaration(String)
getRootNodes X3DNode[] getRootNodes
getRoutes X3DRoute[] getRoutes()
dynamicRouteHandling X3DRoute[] addRoute(X3DNode, String, X3DNode, String)
void removeRoute(X3DRoute)
dispose void dispose()

5.2.6 Scene services

In Table 5.7, each row lists the abstract name of a scene service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.7 — Scene services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract name C# bound name
getMetadata String getMetadata(String)
setMetadata void setMetadata(String, String)
namedNodeHandling void updateExportedNode(String, String)
void removeExportedNode(String)
rootNodeHandling void addRootNode(X3DNode)
void removeRootNode(X3DNode);

5.2.7 Node services

In Table 5.8, each row lists the abstract name of a node service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.8 — Node services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract name C# bound name
getTypeName String getName()
getType int[] getType()
getField X3DField getField(String)
getFieldDefinitions X3DFieldDefinition getFieldDefinitions()
dispose void dispose()

5.2.8 Field services

In Table 5.9, each row lists the abstract name of a field service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.9 — Field services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract name C# bound name
getName String getName()
getType int getType()
getAccessType boolean isWritable()
boolean isReadable()
getValue type getValue()
void getValue(type)
type get1Value(int)
setValue void setValue(type)
void get1Value(int, type)
registerFieldInterest void addFieldEventListener(X3DFieldEventListener)
void removeFieldEventListener(X3DFieldEventListener)
dispose void dispose()

5.2.9 Route services

In Table 5.10, each row lists the abstract name of a route service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.10 — Route services by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract name C# bound name
getSourceNode X3DNode getSourceNode()
getSourceField String getSourceField()
getDestinationNode X3DNode getDestinationNode()
getDestinationField String getDestinationField()
dispose dispose()

5.2.10 Prototype services

In Table 5.11, each row lists the abstract name of a prototype service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.11 — Prototype services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract Name C# Bound Name
isExternProto instanceof operator
createInstance X3DProtoInstance createInstance()
getFieldDefinitions X3DFieldDefinition[] getFieldDefinitions
checkLoadState int getLoadState()
requestImmediateLoad void loadNow()
dispose dispose()

5.2.11 Configuration services

In Table 5.12, each row lists the abstract name of a prototype service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.12 — Configuration services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract Name C# Bound Name
getComponentName String getComponentName()
getComponentLevel int ComponentLevel()
getProfileName String getProfileName()
getProfileComponents X3DProfileComponent[] getProfileComponents()
getProviderName String getProviderName()
getUnitCategory int getUnitCategory()
getUnitConversion String getUnitConversion()
getUnitName String getUnitName()

5.2.12 Content services

In Table 5.13, each row lists the abstract name of a content service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.13 — Script content services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract name C# bound name
setBrowser void setBrowser(Browser)
setFields setFields(X3DScriptNode, Map)
initialize void initialize()
prepareEvents void prepareEvents()
eventsProcessed void eventsProcessed()
shutdown void shutdown()

5.2.13 Matrix services

In Table 5.14, each row lists the abstract name of a matrix service from part 2 of ISO/IEC 19775 followed by the corresponding C# bound name.

Table 5.14 — Matrix services listed by abstract name in the order presented in part 2 of ISO/IEC 19775

Abstract name C# bound name
set void set(Vector3, Rotation, Vector3, Rotation, Vector3).
get void get(Vector3, Rotation, Vector3)
inverse void inverse()
transpose void transpose()
multiply void multiplyLeft(Matrix)
void multiplyRight(Matrix)
multiplyWithVector void multiplyLeft(Matrix, Vector3)
void multiplyLeft(Matrix, SFVec3d)
void multiplyRight(Matrix, Vector3)
void multiplyRight(Matrix, SFVec3d)

--- X3D separator bar ---