ComPWA
Common Partial-Wave-Analysis Framework
FunctionTreeIntensity.hpp
Go to the documentation of this file.
1 #ifndef CORE_FUNCTIONTREEINTENSITY_HPP_
2 #define CORE_FUNCTIONTREEINTENSITY_HPP_
3 
4 #include <memory>
5 
6 #include "Core/Function.hpp"
8 
9 namespace ComPWA {
10 namespace Data {
11 struct DataMap;
12 }
13 namespace FunctionTree {
14 class TreeNode;
15 
17 public:
18  FunctionTreeIntensity(std::shared_ptr<TreeNode> Tree_,
19  ParameterList Parameters_, ParameterList Data_);
20 
21  FunctionTreeIntensity(const FunctionTreeIntensity &other) = delete;
22 
24 
25  std::vector<double> evaluate(const ComPWA::DataMap &data) noexcept;
26 
27  void updateParametersFrom(const std::vector<double> &params);
28  std::vector<ComPWA::Parameter> getParameters() const;
29 
30  std::tuple<std::shared_ptr<ComPWA::FunctionTree::TreeNode>,
32  bind(const ComPWA::DataMap &data);
33 
34  std::string print(int level) const;
35 
36 private:
37  void updateDataContainers(const ComPWA::DataMap &data);
38 
39  std::shared_ptr<TreeNode> Tree;
42 };
43 
44 void updateDataContainers(ParameterList Data, const ComPWA::DataMap &data);
45 
46 } // namespace FunctionTree
47 } // namespace ComPWA
48 
49 #endif
ParameterList class.
void updateDataContainers(ParameterList Data, const ComPWA::DataMap &data)
std::unordered_map< std::string, std::vector< double > > DataMap
Definition: Function.hpp:15
This class provides a list of parameters and values of different types.
Interface template for a general Function of the form OutputType Function(InputTypes) The concept clo...
Definition: Function.hpp:24