![]() |
AmpGen 2.1
|
Traverses trees in IExpression::resolve() to keep track of the dependencies of the tree such as sub-trees, external parameters and the mapping between particle kinematics and the event vector.
Definition at line 28 of file ASTResolver.h.
Public Member Functions | |
ASTResolver (const std::map< std::string, unsigned > &evtMap={}, const MinuitParameterSet *mps=nullptr) | |
std::vector< std::pair< uint64_t, Expression > > | getOrderedSubExpressions (const Expression &expression) |
template<class TYPE> | |
void | resolve (const TYPE &obj) |
template<class TYPE, class ... ARGS> | |
size_t | addCacheFunction (const std::string &name, const ARGS &... args) |
size_t | nParams () const |
bool | enableCuda () const |
bool | enableAVX () const |
bool | enableCompileConstants () const |
void | setEnableAVX () |
std::map< std::string, std::shared_ptr< CacheTransfer > > | cacheFunctions () const |
void | addResolvedParameter (const IExpression *param, const std::string &thing) |
void | addResolvedParameter (const IExpression *param, const size_t &address, const size_t &arg=0) |
std::string | resolvedParameter (const IExpression *param) const |
void | clear () |
std::map< const IExpression *, std::string > | parameters () const |
std::vector< Parameter > | unresolvedParameters () const |
template<> | |
void | resolve (const Parameter &obj) |
template<> | |
void | resolve (const SubTree &obj) |
template<> | |
void | resolve (const Spline &obj) |
template<> | |
void | resolve (const MinuitParameterLink &obj) |
template<> | |
void | resolve (const LambdaExpression &obj) |
AmpGen::ASTResolver::ASTResolver | ( | const std::map< std::string, unsigned > & | evtMap = {}, |
const MinuitParameterSet * | mps = nullptr ) |
|
inline |
Definition at line 35 of file ASTResolver.h.
void AmpGen::ASTResolver::addResolvedParameter | ( | const IExpression * | param, |
const size_t & | address, | ||
const size_t & | arg = 0 ) |
void AmpGen::ASTResolver::addResolvedParameter | ( | const IExpression * | param, |
const std::string & | thing ) |
std::map< std::string, std::shared_ptr< CacheTransfer > > AmpGen::ASTResolver::cacheFunctions | ( | ) | const |
void AmpGen::ASTResolver::clear | ( | ) |
|
inline |
Definition at line 45 of file ASTResolver.h.
|
inline |
Definition at line 46 of file ASTResolver.h.
|
inline |
Definition at line 44 of file ASTResolver.h.
std::vector< std::pair< uint64_t, Expression > > AmpGen::ASTResolver::getOrderedSubExpressions | ( | const Expression & | expression | ) |
|
inline |
Definition at line 43 of file ASTResolver.h.
|
inline |
Definition at line 55 of file ASTResolver.h.
void AmpGen::ASTResolver::resolve | ( | const LambdaExpression & | obj | ) |
void AmpGen::ASTResolver::resolve | ( | const MinuitParameterLink & | obj | ) |
void AmpGen::ASTResolver::resolve | ( | const Parameter & | obj | ) |
void AmpGen::ASTResolver::resolve | ( | const Spline & | obj | ) |
void AmpGen::ASTResolver::resolve | ( | const SubTree & | obj | ) |
|
inline |
Definition at line 34 of file ASTResolver.h.
std::string AmpGen::ASTResolver::resolvedParameter | ( | const IExpression * | param | ) | const |
|
inline |
Definition at line 47 of file ASTResolver.h.
|
inline |
Definition at line 56 of file ASTResolver.h.