GitHub
Download
Forum
Overview
Tutorial
C++ API
General interfaces
Data interfaces
UDomain
GetSchemaData
GetSchemaVersion
QueryNamedObject
QueryNamedObjectId
QueryNamedObjectLink
QueryNamedObjectMultiple
QueryStorage
UStorage
UObject
UList
UBitFlagSet
UBitFlagSetSingle
WDomain
WObject
IEventClient
Schema interfaces
Configuration interfaces
Structures
Error codes
C# API
DTDL
DADL
Setup
UDomain::GetSchemaData
Reads schema data from the domain. Data can be read in multiple blocks and be used to create or update a local copy of the schema (
TSchema::AddDelta
).
Syntax
HRESULT
GetSchemaData(
[in]
U
INT32
p_ulOffset,
[in, out]
U
INT32
*
p_pulSize,
[out]
void
*
p_pData
);
Parameter
p_ulOffset
[in]
Type:
UINT32
Offset that the data should be retrieved from.
Schema data is a contiguous block of data.
Normally, the current version of the local TSchema object is passed for this parameter. In this way, you can retrieve the data you need to update the local TSchema object.
p_pulSize
[in, out]
Type:
UINT32*
On input contains the size of the buffer that p_pData is pointing to. The variable contains the size of bytes copied to p_pData on successful return.
p_pData
[out]
Type:
void*
Pointer to a buffer.
Return value
S_OK if data has been written to p_pData and the p_pSchemaVersion is modified. S_FALSE if no data has been written (because there was no additional schema data to get). Otherwise, a code from the
Error Codes
.
Remarks
Schema data never changes. If you retrieved data in an earlier call, you only need to read the new data. Set the p_ulOffset to the size of data you already retrieved to read the additional data.
Compare the schema version to determine if new data is available at startup.
© 2022 Mobiland AG