File indexing completed on 2025-04-19 09:10:12
0001 #ifndef PHASIC_Scales_Tag_Setter_H
0002 #define PHASIC_Scales_Tag_Setter_H
0003
0004 #include "PHASIC++/Scales/Scale_Setter_Base.H"
0005 #include "ATOOLS/Math/Algebra_Interpreter.H"
0006
0007 namespace PHASIC {
0008
0009 class Tag_Setter: public ATOOLS::Tag_Replacer {
0010 private:
0011
0012 Scale_Setter_Base *p_setter;
0013
0014 ATOOLS::Algebra_Interpreter *p_calc;
0015
0016 public:
0017
0018
0019 inline Tag_Setter(Scale_Setter_Base *const setter):
0020 p_setter(setter), p_calc(NULL) {}
0021
0022
0023 std::string ReplaceTags(std::string &expr) const;
0024 ATOOLS::Term *ReplaceTags(ATOOLS::Term *term) const;
0025
0026 void AssignId(ATOOLS::Term *term);
0027
0028 void SetTags(ATOOLS::Algebra_Interpreter *const calc);
0029
0030
0031 inline void SetCalculator(ATOOLS::Algebra_Interpreter *const calc)
0032 { p_calc=calc; }
0033
0034 };
0035
0036 }
0037
0038 #endif