31#ifndef KIM_COLLECTIONS_HPP_
32#define KIM_COLLECTIONS_HPP_
42class CollectionsImplementation;
125 static int Create(Collections **
const collections);
140 static void Destroy(Collections **
const collections);
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;
608 Collections(Collections
const &);
609 void operator=(Collections
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.
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.