31#ifndef KIM_COLLECTIONS_HPP_
32#define KIM_COLLECTIONS_HPP_
41class CollectionItemType;
42class CollectionsImplementation;
188 std::string
const & itemName,
189 std::string
const **
const fileName,
209 std::string
const & itemName,
254 std::string
const **
const fileName,
255 unsigned int *
const fileLength,
256 unsigned char const **
const fileRawData,
257 int *
const availableAsString,
258 std::string
const **
const fileString)
const;
300 std::string
const **
const itemName)
const;
346 std::string
const **
const itemName)
const;
371 std::string
const & itemName,
372 std::string
const **
const fileName)
const;
395 std::string
const & itemName,
443 std::string
const **
const fileName,
444 unsigned int *
const fileLength,
445 unsigned char const **
const fileRawData,
446 int *
const availableAsString,
447 std::string
const **
const fileString)
const;
469 std::string
const **
const semVer)
const;
487 std::string
const **
const name)
const;
510 std::string
const **
const name, std::string
const **
const value)
const;
574 std::string
const **
const directoryName)
const;
614 CollectionsImplementation * pimpl;
An Extensible Enumeration for the Collection's supported by the KIM API.
An Extensible Enumeration for the CollectionItemType's supported by the KIM API.
Provides the interface to the KIM API Collections and is meant to be used by simulators.
int GetItemLibraryFileNameByCollectionAndType(Collection const collection, CollectionItemType const itemType, std::string const &itemName, std::string const **const fileName) const
Get the item's library file name.
void PopLogVerbosity()
Pop a LogVerbosity from the Collections object's Log object verbosity stack.
int GetItemNameByType(int const index, std::string const **const itemName) const
Get the name of an item from the cached list.
void GetProjectNameAndSemVer(std::string const **const projectName, std::string const **const semVer) const
Get the KIM API project name and full Semantic Version string.
void PushLogVerbosity(LogVerbosity const logVerbosity)
Push a new LogVerbosity onto the Collections object's Log object verbosity stack.
int GetEnvironmentVariableName(CollectionItemType const itemType, std::string const **const name) const
Get the names of environment variables that store configuration settings for the KIM::COLLECTION::env...
void GetConfigurationFileEnvironmentVariable(std::string const **const name, std::string const **const value) const
Get the name and value of the environment variable that stores the name of the KIM API user configura...
int GetItemLibraryFileNameAndCollection(CollectionItemType const itemType, std::string const &itemName, std::string const **const fileName, Collection *const collection) const
Get the item's library file name and its KIM::Collection.
int CacheListOfItemNamesByType(CollectionItemType const itemType, int *const extent)
Cache a list of all item names of a specific type in the KIM API collections.
int GetItemMetadataFile(int const index, std::string const **const fileName, unsigned int *const fileLength, unsigned char const **const fileRawData, int *const availableAsString, std::string const **const fileString) const
Get the name and content of one of an item's metadata files.
int CacheListOfItemNamesByCollectionAndType(Collection const collection, CollectionItemType const itemType, int *const extent)
Cache a list of all item names of a specific type in a specific collection.
int GetItemType(std::string const &itemName, CollectionItemType *const itemType) const
Get the KIM::CollectionItemType of the item in the KIM API collections with a specific name.
int GetItemMetadataFileByCollectionAndType(int const index, std::string const **const fileName, unsigned int *const fileLength, unsigned char const **const fileRawData, int *const availableAsString, std::string const **const fileString) const
Get the name and content of one of an item's metadata files.
int GetDirectoryName(int const index, std::string const **const directoryName) const
Get the name of a directory from the cached list.
static int Create(Collections **const collections)
Create a new KIM API Collections object.
void SetLogID(std::string const &logID)
Set the identity of the Log object associated with the Collections object.
int CacheListOfItemMetadataFilesByCollectionAndType(Collection const collection, CollectionItemType const itemType, std::string const &itemName, int *const extent)
Cache a list of an item's metadata files.
void GetConfigurationFileName(std::string const **const fileName) const
Get the absolute file and path name of the KIM API user configuration file.
int GetItemNameByCollectionAndType(int const index, std::string const **const itemName) const
Get the name of an item from the cached list.
int CacheListOfDirectoryNames(Collection const collection, CollectionItemType const itemType, int *const extent)
Cache a list of directory names where a specific KIM API collection stores library files for a specif...
int CacheListOfItemMetadataFiles(CollectionItemType const itemType, std::string const &itemName, int *const extent)
Cache a list of an item's metadata files.
static void Destroy(Collections **const collections)
Destroy a previously Collections::Create'd object.
An Extensible Enumeration for the LogVerbosity's supported by the KIM API.