Go to the documentation of this file.
25 #ifndef SRC_XRDEC_XRDECCONFIG_HH_
26 #define SRC_XRDEC_XRDECCONFIG_HH_
32 #include <unordered_map>
58 key += std::to_string( objcfg.
nbchunks );
60 key += std::to_string( objcfg.
nbparity );
62 key += std::to_string( uint8_t( objcfg.
datasize ) );
64 std::unique_lock<std::mutex> lck(
mtx );
69 std::forward_as_tuple(key),
70 std::forward_as_tuple(objcfg) );
71 return p.first->second;
Definition: XrdEcObjCfg.hh:20
Config & operator=(const Config &)=delete
Config & operator=(Config &&)=delete
Definition: XrdClZipArchive.hh:45
const uint8_t nbparity
Definition: XrdEcObjCfg.hh:69
bool enable_plugins
Definition: XrdEcConfig.hh:77
const uint8_t nbchunks
Definition: XrdEcObjCfg.hh:68
std::unordered_map< std::string, RedundancyProvider > redundancies
Definition: XrdEcConfig.hh:81
Definition: XrdEcRedundancyProvider.hh:41
std::mutex mtx
Definition: XrdEcConfig.hh:82
Global configuration for the EC module.
Definition: XrdEcConfig.hh:40
RedundancyProvider & GetRedundancy(const ObjCfg &objcfg)
Get redundancy provider for given data object configuration.
Definition: XrdEcConfig.hh:55
Config()
Constructor.
Definition: XrdEcConfig.hh:87
static Config & Instance()
Singleton access.
Definition: XrdEcConfig.hh:46
const uint64_t datasize
Definition: XrdEcObjCfg.hh:71
Config(const Config &)=delete