NAVTOR SDK  v.3.0
Software Development Kit for fast and efficient development of ECDIS, ECS and generic marine applications
gdb_workspace_edit.h
1 #ifndef SDK_GDB_WORKSPACE_EDIT_INTERFACE_H_
10 #define SDK_GDB_WORKSPACE_EDIT_INTERFACE_H_
11 #pragma once
12 
13 #include <base/inc/sdk_results.h>
14 #include <base/inc/sdk_ref_ptr.h>
16 #include <base/inc/sdk_component_base.h>
17 
19 #include <base/inc/interfaces/edit/edit_interface.h>
20 
21 namespace sdk {
22 namespace gdb { // geodatabase
23 
24 // Classes declared in other files.
25 class IDatasetEdit;
26 
27 // Classes declared in this file.
28 FWD_DECL_INTERFACE(IWorkspaceEditFactory);
29 FWD_DECL_INTERFACE(IWorkspaceEdit);
30 
34  public IGDBObject
35 {
36 public:
42  virtual GDBResult SDK_CALLTYPE Create(
43  IWorkspaceEdit** ewks) throw() = 0;
44 
45  SDK_IMPLEMENT_IID(IWorkspaceEditFactory)
46  SDK_END_INTERFACE(IWorkspaceEditFactory)
47 };
48 SDK_DECLARE_IID(IWorkspaceEditFactory)
49 
50 class IWorkspaceEdit :
53  public ISDKEdit
54 {
55 public:
62  virtual GDBResult SDK_CALLTYPE SetCatalog(
63  CatalogType type,
64  ICatalog* catalog) throw() = 0;
65 
74  virtual GDBResult SDK_CALLTYPE SetWorkspaceProperty(
75  WorkspacePropertyId property_id,
76  const SDKAny& value) throw() = 0;
77 
88  virtual GDBResult SDK_CALLTYPE CreateDataset(
89  DatasetType dataset_type,
90  const SDKString& name,
91  PRSP prsp,
92  DatasetID& id,
93  IDataset** dataset) throw() = 0;
94 
101  virtual GDBResult SDK_CALLTYPE DeleteDataset(
102  DatasetID dataset_id) throw() = 0;
103 
104  SDK_IMPLEMENT_IID(IWorkspaceEdit)
105  SDK_END_INTERFACE(IWorkspaceEdit)
106 };
107 SDK_DECLARE_IID(IWorkspaceEdit)
108 
109 } // namespace gdb
110 } // namespace sdk
111 
112 #endif // SDK_GDB_WORKSPACE_EDIT_INTERFACE_H_
113 
sdk_results.h
A list of SDK error/return results.
WorkspacePropertyId
WorkspacePropertyId
Workspace property enumeration.
Definition: gdb_workspace.h:59
sdk_ref_ptr.h
Interfaces wrapper with reference count control.
gdb_workspace.h
Describes interfaces that manages a geodatabase workspace.
sdk::gdb::IWorkspaceEdit::SetCatalog
virtual GDBResult SDK_CALLTYPE SetCatalog(CatalogType type, ICatalog *catalog)=0
Sets a catalog.
DatasetType
DatasetType
The dataset type definition.
Definition: gdb_dataset.h:46
CatalogType
CatalogType
The catalog type.
Definition: gdb_catalog.h:78
ICatalog
Provides access to members for reading a Catalog. A Catalog is a collection of entries that specifies...
Definition: gdb_catalog.h:295
sdk::gdb::IWorkspaceEdit::CreateDataset
virtual GDBResult SDK_CALLTYPE CreateDataset(DatasetType dataset_type, const SDKString &name, PRSP prsp, DatasetID &id, IDataset **dataset)=0
Creates a dataset specified by a dataset type and dataset properties.
IDataset
Provides access to members that supply dataset information.
Definition: gdb_dataset.h:357
PRSP
SDKUInt32 PRSP
Product specification.
Definition: gdb_const.h:250
sdk::gdb::IWorkspaceEdit::SetWorkspaceProperty
virtual GDBResult SDK_CALLTYPE SetWorkspaceProperty(WorkspacePropertyId property_id, const SDKAny &value)=0
Sets a property of a workspace.
sdk::gdb::IWorkspaceEdit
Provides access to members that control workspace editing.
Definition: gdb_workspace_edit.h:52
sdk_component_interface.h
Common base SDK interfaces.
ISDKComponent
Base interface for all SDK interfaces.
Definition: sdk_component_interface.h:41
sdk::gdb::IWorkspaceEdit::DeleteDataset
virtual GDBResult SDK_CALLTYPE DeleteDataset(DatasetID dataset_id)=0
Deletes a dataset from the workspace.
sdk::gdb::IWorkspaceEditFactory
Provides access to members that create and open a workspace for editing.
Definition: gdb_workspace_edit.h:33
FWD_DECL_INTERFACE
FWD_DECL_INTERFACE(ILWEParserWrapper)
Provides a wrapper around the message parser to get, add or remove the.
sdk::gdb::IWorkspaceEditFactory::Create
virtual GDBResult SDK_CALLTYPE Create(IWorkspaceEdit **ewks)=0
Creates an empty editable workspace.