22 #ifndef ASTSHIM_RATEMAP_H
23 #define ASTSHIM_RATEMAP_H
27 #include "astshim/base.h"
28 #include "astshim/Mapping.h"
71 explicit RateMap(
Mapping const &map,
int ax1,
int ax2, std::string
const &options =
"")
72 :
Mapping(reinterpret_cast<AstMapping *>(astRateMap(const_cast<AstObject *>(map.
getRawPtr()), ax1,
73 ax2,
"%s", options.c_str()))) {}
87 return copyImpl<RateMap, AstRateMap>();
91 explicit RateMap(AstRateMap *rawptr) :
Mapping(reinterpret_cast<AstMapping *>(rawptr)) {
93 std::ostringstream os;
94 os <<
"this is a " <<
getClassName() <<
", which is not a RateMap";
95 throw std::invalid_argument(os.str());
RateMap(AstRateMap *rawptr)
Construct a RateMap from a raw AST pointer.
Definition: RateMap.h:91
AstObject const * getRawPtr() const
Definition: Object.h:286
RateMap(Mapping const &map, int ax1, int ax2, std::string const &options="")
Definition: RateMap.h:71
virtual std::shared_ptr< Object > copyPolymorphic() const override
Definition: RateMap.h:86
std::string getClassName() const
Definition: Object.h:133
std::shared_ptr< RateMap > copy() const
Return a deep copy of this object.
Definition: RateMap.h:83