Volume Cartographer 2.27.0
Namespaces | Typedefs | Enumerations | Variables
VolumePkgVersion.hpp File Reference

VolumePkg metadata templates. More...

#include <string>
#include <unordered_map>
Include dependency graph for VolumePkgVersion.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  volcart
 Volume Cartographer library
 

Typedefs

using volcart::DictionaryEntryKey = std::string
 
using volcart::Dictionary = std::unordered_map< DictionaryEntryKey, DictionaryEntryType >
 
using volcart::Library = std::unordered_map< int, Dictionary >
 

Enumerations

enum class  volcart::DictionaryEntryType { String , Int , Double }
 

Variables

static constexpr int volcart::VOLPKG_VERSION_LATEST = 7
 Volume Package version generated by this release More...
 
const Dictionary volcart::V7
 
const Dictionary volcart::V6 = V7
 
const Dictionary volcart::V5 = V6
 
const Dictionary volcart::V4 = V5
 
const Dictionary volcart::V3
 
const Dictionary volcart::V2
 
const Dictionary volcart::V1
 
const Library volcart::VERSION_LIBRARY
 

Detailed Description

VolumePkg metadata templates.

Author
Seth Parker
Date
April 2015

The objects in this file define the keys that can be expected in a VolumePkg's metadata JSON file, based on the VolumePkg version number.

A volcart::Dictionary defines a set of metadata keys and the associated types of the corresponding values (e.g. the key "version" should be interpreted as an int). A volcart::Library holds several such dictionaries: one dictionary for each unique version of VolumePkg.

volcart::VERSION_LIBRARY holds the metadata keys and expected value-types for every version of VolumePkg. When creating a new VolumePkg, these dictionaries are used to define the default keys that populate the JSON file. In the future, applications that use VolumePkg will be able to query the Library in order to determine what information can be expected in a particular version of a VolumePkg. In this way, developers will be able to maintain backwards compatibility with older datasets.

Definition in file VolumePkgVersion.hpp.