Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
Loading...
Searching...
No Matches
ILhaPrototypeRegistry.h
Go to the documentation of this file.
1#ifndef ILHA_PROTOTYPE_REGISTRY_H
2#define ILHA_PROTOTYPE_REGISTRY_H
3
4#include <cstddef>
5#include <vector>
6
7#include "Include.h"
8
14 size_t itemCount = 2;
15 size_t valueIdx = 1;
16 int scaleIdx = -1;
17 int rgIdx = -1;
18 int binIdx = -1;
19 bool globalScale = false;
20};
21
30public:
31 virtual ~ILhaPrototypeRegistry() = default;
32
33 virtual void add_lha_prototype(BlockName blockName,
34 size_t itemCount = 2,
35 size_t valueIdx = 1,
36 int scaleIdx = -1,
37 int rgIdx = -1,
38 int binIdx = -1,
39 bool globalScale = false) = 0;
40
41 virtual void add_lha_prototypes(const std::vector<LhaPrototypeSpec>& prototypes)
42 {
43 for (const auto& prototype : prototypes) {
44 add_lha_prototype(prototype.blockName,
45 prototype.itemCount,
46 prototype.valueIdx,
47 prototype.scaleIdx,
48 prototype.rgIdx,
49 prototype.binIdx,
50 prototype.globalScale);
51 }
52 }
53};
54
55#endif // ILHA_PROTOTYPE_REGISTRY_H
Block identifier with alias support.
Definition BlockName.h:59
Port used by the domain to register LHA parser prototypes.
virtual void add_lha_prototype(BlockName blockName, size_t itemCount=2, size_t valueIdx=1, int scaleIdx=-1, int rgIdx=-1, int binIdx=-1, bool globalScale=false)=0
virtual void add_lha_prototypes(const std::vector< LhaPrototypeSpec > &prototypes)
virtual ~ILhaPrototypeRegistry()=default
Value object describing an additional LHA block prototype.