13#ifndef RooFit_Detail_DataMap_h
14#define RooFit_Detail_DataMap_h
74struct hash<
RooFit::Detail::DataKey> {
91 inline void set(
RooAbsArg const *arg, std::span<const double>
const &span)
105 return const_cast<DataMap *
>(
this)->
at(arg, caller);
124 std::vector<RooBatchCompute::Config>
_cfgs;
TRObject operator()(const T1 &t1) const
Common abstract base class for objects that represent a value and a "shape" in RooFit.
bool hasDataToken() const
std::size_t dataToken() const
Returns the token for retrieving results in the BatchMode. For internal use only.
RooAbsArg * owner() const
Returns the owner of this proxy.
Minimal configuration struct to steer the evaluation of a single node with the RooBatchCompute librar...
DataKey(RooTemplateProxy< T > const &proxy)
friend bool operator!=(const DataKey &k1, const DataKey &k2)
DataKey(RooAbsArg const *arg)
DataKey(TNamed const *arg)
TObject const * operator->() const
friend bool operator<(const DataKey &k1, const DataKey &k2)
friend bool operator==(const DataKey &k1, const DataKey &k2)
TObject const & operator*() const
std::span< const double > at(RooTemplateProxy< T > const &proxy)
std::vector< RooBatchCompute::Config > _cfgs
RooBatchCompute::Config config(RooAbsArg const *arg) const
std::vector< std::span< const double > > _dataMap
std::span< const double > at(RooTemplateProxy< T > const &proxy) const
std::span< const double > at(RooAbsArg const *arg, RooAbsArg const *caller=nullptr)
void set(RooAbsArg const *arg, std::span< const double > const &span)
void setConfig(RooAbsArg const *arg, RooBatchCompute::Config const &config)
std::span< const double > at(RooAbsArg const *arg, RooAbsArg const *caller=nullptr) const
void resize(std::size_t n)
const T & arg() const
Return reference to object held in proxy.
The TNamed class is the base class for all named ROOT classes.
Mother of all ROOT objects.
Namespace for dispatching RooFit computations to various backends.
The namespace RooFit contains mostly switches that change the behaviour of functions of PDFs (or othe...