DataDescriptionDefinitionDatabaseImplInterface Class Reference

#include <datadescriptiondefinitiondatabaseimpl.h>

Inheritance diagram for DataDescriptionDefinitionDatabaseImplInterface:

详细描述

Allows to create different implementations of data description database stores.

公共成员函数

MAXON_METHOD Bool   Contains (const Id &category, const IdAndVersion &dataType, const LanguageRef &language) const
MAXON_METHOD Result < DataDescriptionDefinition >  LoadDescription ( LOADDESCRIPTIONMODE mode, const Id &category, const LanguageRef &language, const IdAndVersion &dataType, Id *foundInDatabase=nullptr) const
MAXON_METHOD Result < Tuple < Bool , DataDescriptionDefinition * > >  StoreDescription (const Id &databaseId, const Id &category, const LanguageRef &language, const IdAndVersion &dataType, const DataDescriptionDefinition &description, const DataDescriptionDefinition &overwrittenDescription, Bool usePendingSystem)
MAXON_METHOD Result < Bool DeleteDescription (const Id &category, const LanguageRef &language, const IdAndVersion &dataType)
MAXON_METHOD Result < BaseArray < IdAndVersion > >  GetRegisteredDescriptions (const Id &category, const LanguageRef &language) const
MAXON_METHOD Result < BaseArray < LanguageRef > >  GetRegisteredLanguages () const
MAXON_METHOD Result < void >  WriteDataBases () const
MAXON_METHOD Result < Int RenameId (const Id &oldId, const Id &newId)
MAXON_METHOD Result < Int RenameAttribute (const InternedId &oldId, const InternedId &newId)
MAXON_METHOD Result < Bool CheckUniqueAttributeName (const InternedId &searchId) const
MAXON_METHOD Result < DataDescription >  UpdateDescriptions (const Id &category, const IdAndVersion &dataTypeId, const LanguageRef &language) const
MAXON_METHOD Bool   IsWritableDatabase (const Id &languageId) const
MAXON_METHOD Int   GetChangeCount () const
MAXON_METHOD Result < void >  Write () const

私有成员函数

  MAXON_INTERFACE ( DataDescriptionDefinitionDatabaseImplInterface , MAXON_REFERENCE_NORMAL , "net.maxon.interface.datadescriptiondefinitiondatabaseimpl")

成员函数文档编制

◆  MAXON_INTERFACE()

MAXON_INTERFACE ( DataDescriptionDefinitionDatabaseImplInterface   ,
MAXON_REFERENCE_NORMAL   ,
"net.maxon.interface.datadescriptiondefinitiondatabaseimpl"   
)
private

◆  Contains()

MAXON_METHOD Bool Contains ( const Id category ,
const IdAndVersion dataType ,
const LanguageRef &  language  
) const

checks if the data base contains the datatype.

参数
[in] category Database category (e.g. DATADESCRIPTION_CATEGORY_DATA / DATADESCRIPTION_CATEGORY_UI).
[in] dataType 数据 type id to load.
[in] language Language (only valid for category DATADESCRIPTION_CATEGORY_STRING).
返回
True if the data base contains the data type.

◆  LoadDescription()

MAXON_METHOD Result <DataDescriptionDefinition> LoadDescription ( LOADDESCRIPTIONMODE   mode ,
const Id category ,
const LanguageRef &  language ,
const IdAndVersion dataType ,
Id foundInDatabase = nullptr  
) const

Loads a description from the registered databases.

参数
[in] category Database category (e.g. DATADESCRIPTION_CATEGORY_DATA / DATADESCRIPTION_CATEGORY_UI).
[in] language Language (only valid for category DATADESCRIPTION_CATEGORY_STRING).
[in] dataType 数据 type id to load.
[out] foundInDatabase Optional: Pointer to an Id of the database where the entry was found.
返回
DataDescriptionDefinition on success.

◆  StoreDescription()

MAXON_METHOD Result < Tuple < Bool , DataDescriptionDefinition*> > StoreDescription ( const Id databaseId ,
const Id category ,
const LanguageRef &  language ,
const IdAndVersion dataType ,
const DataDescriptionDefinition &  description ,
const DataDescriptionDefinition &  overwrittenDescription ,
Bool   usePendingSystem  
)

Stores the given description under the given values.

参数
[in] databaseId 数据 base id (see RegisterDatabase()/GetRegisteredDatabases()).
[in] category Database category (e.g. DATADESCRIPTION_CATEGORY_DATA / DATADESCRIPTION_CATEGORY_UI).
[in] language Language (only valid for category DATADESCRIPTION_CATEGORY_STRING).
[in] dataType 数据 type id to store.
[in] description 描述 data to store.
返回
Tuple with a Bool (changed or not) and the pointer of the stored description if changed. Error otherwise.

◆  DeleteDescription()

MAXON_METHOD Result < Bool > DeleteDescription ( const Id category ,
const LanguageRef &  language ,
const IdAndVersion dataType  
)

DeleteDescription deletes a description from the database.

参数
[in] category Database category (e.g. DATADESCRIPTION_CATEGORY_DATA / DATADESCRIPTION_CATEGORY_UI).
[in] language Language (only valid for category DATADESCRIPTION_CATEGORY_STRING).
[in] dataType 数据 type id to delete.
返回
True/False on success. True means the description was found and deleted. False if the description was not found.

◆  GetRegisteredDescriptions()

MAXON_METHOD Result < BaseArray < IdAndVersion > > GetRegisteredDescriptions ( const Id category ,
const LanguageRef &  language  
) const

Return all registered descriptions.

参数
[in] category Database category (e.g. DATADESCRIPTION_CATEGORY_DATA / DATADESCRIPTION_CATEGORY_UI).
[in] language Language (only valid for category DATADESCRIPTION_CATEGORY_STRING).
返回
Array on success.

◆  GetRegisteredLanguages()

MAXON_METHOD Result < BaseArray <LanguageRef> > GetRegisteredLanguages ( ) const

Returns all registered languages of this database.

返回
Array with languages on success.

◆  WriteDataBases()

MAXON_METHOD Result <void> WriteDataBases ( ) const

Save all databases.

返回
OK on success.

◆  RenameId()

MAXON_METHOD Result < Int > RenameId ( const Id oldId ,
const Id newId  
)

Renames a id in all databases to the new id.

参数
[in] oldId Old id to rename
[in] newId Id to replace.
返回
Number of values that were renamed.

◆  RenameAttribute()

MAXON_METHOD Result < Int > RenameAttribute ( const InternedId oldId ,
const InternedId newId  
)

Renames an attribute in all databases.

参数
[in] oldId Old attribute key.
[in] newId New attribute key.
返回
Number of values that were renamed.

◆  CheckUniqueAttributeName()

MAXON_METHOD Result < Bool > CheckUniqueAttributeName ( const InternedId searchId ) const

Checks if the given id is unique in all data bases.

参数
[in] searchId Id to search for.
返回
True if the id is unique. False if the id already exists.

◆  UpdateDescriptions()

MAXON_METHOD Result <DataDescription> UpdateDescriptions ( const Id category ,
const IdAndVersion dataTypeId ,
const LanguageRef &  language  
) const

Updates the description from the given DataDescriptionDefinition.

参数
[in] category Category to search.
[in] dataTypeId 数据 type id to process.
[in] language Language to process.
返回
OK on success.

◆  IsWritableDatabase()

MAXON_METHOD Bool IsWritableDatabase ( const Id languageId ) const

Returns true if the database is writable.

参数
[in] languageId Language id to check.

◆  GetChangeCount()

MAXON_METHOD Int GetChangeCount ( ) const

Returns the number of changes made since the last Write() .

◆  Write()

MAXON_METHOD Result <void> Write ( ) const

Writes all changes permanently to hd.

返回
OK on success.