DataDescriptionDatabaseInterface Class Reference

#include <datadescriptiondatabase.h>

Detailed Description

Interface to access the storage of DataDescription objects.

Static Public Member Functions

static MAXON_METHOD Result< DataDescription > LoadDescription (const Id &category, const LanguageRef &language, const Id &dataType)
 
static MAXON_METHOD Result< DataDescription > LoadDescription (const Id &category, const LanguageRef &language, const IdAndVersion &dataType)
 
static MAXON_METHOD Result< void > StoreDescription (const Id &category, const LanguageRef &language, const Id &dataType, DataDescription &description)
 
static MAXON_METHOD Result< void > StoreDescription (const Id &category, const LanguageRef &language, const IdAndVersion &dataType, DataDescription &description)
 
static MAXON_METHOD Result< void > DescriptionDefinitionChanged (const Id &category, const LanguageRef &language, const IdAndVersion &dataType)
 
static MAXON_METHOD Result< BaseArray< Tuple< Id, Data, String > > > GetEffectiveEnumList (const DataDictionary &dataEntry, const DataDictionary &guiEntry, const DataDescription &stringDescription, Bool resolveExtensionPointsAndGui, const AssetRepositoryRef &repository)
 
static MAXON_METHOD Result< void > PostProcessStringDescription (DataDescription &description, const BaseArray< DataDictionary > &entries)
 

Private Member Functions

 MAXON_INTERFACE_NONVIRTUAL (DataDescriptionDatabaseInterface, MAXON_REFERENCE_NONE, "net.maxon.interface.datadescriptiondatabase")
 

Member Function Documentation

◆ MAXON_INTERFACE_NONVIRTUAL()

MAXON_INTERFACE_NONVIRTUAL ( DataDescriptionDatabaseInterface  ,
MAXON_REFERENCE_NONE  ,
"net.maxon.interface.datadescriptiondatabase"   
)
private

◆ LoadDescription() [1/2]

static MAXON_METHOD Result<DataDescription> LoadDescription ( const Id category,
const LanguageRef &  language,
const Id dataType 
)
static

LoadDescription description.

Parameters
[in]categoryDatabase category (e.g. DATADESCRIPTION_CATEGORY_DATA / DATADESCRIPTION_CATEGORY_UI).
[in]languageLanguage (only valid for category DATADESCRIPTION_CATEGORY_STRING).
[in]dataTypeData type id to load.
Returns
OK on success.

◆ LoadDescription() [2/2]

static MAXON_METHOD Result<DataDescription> LoadDescription ( const Id category,
const LanguageRef &  language,
const IdAndVersion dataType 
)
static

◆ StoreDescription() [1/2]

static MAXON_METHOD Result<void> StoreDescription ( const Id category,
const LanguageRef &  language,
const Id dataType,
DataDescription &  description 
)
static

StoreDescription description.

Parameters
[in]categoryDatabase category (e.g. DATADESCRIPTION_CATEGORY_DATA / DATADESCRIPTION_CATEGORY_UI).
[in]languageLanguage (only valid for category DATADESCRIPTION_CATEGORY_STRING).
[in]dataTypeData type id to store.
[in]descriptionDescription data to store.
Returns
OK on success.

◆ StoreDescription() [2/2]

static MAXON_METHOD Result<void> StoreDescription ( const Id category,
const LanguageRef &  language,
const IdAndVersion dataType,
DataDescription &  description 
)
static

◆ DescriptionDefinitionChanged()

static MAXON_METHOD Result<void> DescriptionDefinitionChanged ( const Id category,
const LanguageRef &  language,
const IdAndVersion dataType 
)
static

Resets the cached description.

◆ GetEffectiveEnumList()

static MAXON_METHOD Result<BaseArray<Tuple<Id, Data, String> > > GetEffectiveEnumList ( const DataDictionary &  dataEntry,
const DataDictionary &  guiEntry,
const DataDescription &  stringDescription,
Bool  resolveExtensionPointsAndGui,
const AssetRepositoryRef &  repository 
)
static

GetEffectiveEnumList returns the enum list prepared for display in the ui with the user order etc. It takes DESCRIPTION::DATA::BASE::ENUM and DESCRIPTION::UI::BASE::ENUM into account.

Parameters
[in]dataEntryDescription of the data.
[in]guiEntryDescription of the ui.
[in]stringDescriptionDescription of the strings.
[in]resolveExtensionPointsAndGuiTrue if extension points and ui order should be evaluated. False will return the unprocessed DESCRIPTION::DATA::BASE::ENUM array.
[in]repositoryAsset Repository to use.
Returns
OK on success.

◆ PostProcessStringDescription()

static MAXON_METHOD Result<void> PostProcessStringDescription ( DataDescription &  description,
const BaseArray< DataDictionary > &  entries 
)
static

PostProcessStringDescription description.

Parameters
[in]descriptionDescription to modify
[in]entriesString description entries to process.
Returns
OK on success.