DG Kernel Documentation


Skip Navigation Links.
Start page
Quick Start
Search Page
Installation
Overview of the software
What is new
Licensing
Collapse ModelsModels
Collapse DG Kernel ComponentsDG Kernel Components
Collapse API ReferenceAPI Reference
Interface List
Vector Space
Collapse General GeometryGeneral Geometry
Collapse ModelModel
Collapse ViewView
Collapse General ComputingGeneral Computing
Collapse Samples and TutorialsSamples and Tutorials
Collapse GraphicsGraphics
Collapse Math ObjectsMath Objects
Collapse DeprecatedDeprecated
Redistribution
Model Viewer
Open Source
Support
Skip Navigation Links Search Documentation


IDataSource Interface

GetTable
CreateTable
DropTable

Starting from version 2.1 any DG Kernel model keeps a mini data base, which currently consist of a single table. IDataSource is the top-level interface in the user data hierarchy. It represents the data base. IDataSource can be queried from IModel.

See also User Data Sample, User Data, IDataTable, IData, IRecordSet 


HRESULT GetTable(char* name, IDataTable** table, VARIANT_BOOL* result )

Parameters

name - [in] Name of the table to be accessed. Ignored in this release. Can be set to empty string or NULL. 

table - [out] returned IDataTable interface implemented the table.

result - [out, retval] The returned status value. 0 - if the table does not exist. 1 - success. 

Return Values:

S_OK in case of success.

DISP_E_PARAMNOTOPTIONAL - if any of the parameters are a NULL reference.

Remarks:

If the table exists the method returns its IDataTable interface in table parameter and the returned result is set to 1 (true). name parameter has no effect in this release and normally is set to an empty string.


HRESULT CreateTable(char* name)

Parameters

name - [in] Name of the table to be created. Ignored in this release. Can be set to empty string or NULL. 

Return Values

TYPE_E_NAMECONFLICT  if the table already exists.

S_OK in case of success.

Remarks:

Starting from version 2.1 any DG Kernel model keeps a mini data base, which currently consist of a single table. It is an error to call this method when the table already exists. Use result return code from the GetTable method above to check for that. name parameter has no effect in this release and normally is set to an empty string.


HRESULT DropTable(char* name)

Parameters

name - [in] Name of the table to be created. Ignored in this release. Can be set to empty string or NULL. 

Return Values

TYPE_E_ELEMENTNOTFOUND  if the table does not exist .

S_OK in case of success.

Remarks:

Deletes the table. Any data will be destroyed as the result. This method helps to reduce the model size when the data no longer needed.