File indexing completed on 2026-06-02 08:51:48
0001 #ifndef DVCS_SCALES_MODULE_H
0002 #define DVCS_SCALES_MODULE_H
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include <string>
0012
0013 #include "../../../beans/channel/ChannelType.h"
0014 #include "../../../beans/observable/DVCS/DVCSObservableKinematic.h"
0015 #include "../ScalesModule.h"
0016
0017 namespace PARTONS {
0018 class Scales;
0019 }
0020
0021 namespace PARTONS {
0022
0023
0024
0025
0026
0027
0028 class DVCSScalesModule: public ScalesModule<DVCSObservableKinematic> {
0029
0030 public:
0031
0032
0033
0034
0035 static const std::string DVCS_SCALES_MODULE_CLASS_NAME;
0036
0037
0038
0039
0040
0041 DVCSScalesModule(const std::string &className);
0042
0043
0044
0045
0046
0047 DVCSScalesModule(const DVCSScalesModule &other);
0048
0049
0050
0051
0052 virtual ~DVCSScalesModule();
0053
0054 virtual DVCSScalesModule* clone() const = 0;
0055
0056 virtual Scales compute(const DVCSObservableKinematic& kinematic) = 0;
0057
0058 protected:
0059
0060 virtual void initModule();
0061 virtual void isModuleWellConfigured();
0062 };
0063
0064 }
0065
0066 #endif