Go to the documentation of this file.
22 #ifndef ASTSHIM_NORMMAP_H
23 #define ASTSHIM_NORMMAP_H
61 explicit NormMap(
Frame const &frame, std::string
const &options =
"")
62 :
Mapping(reinterpret_cast<AstMapping *>(
63 astNormMap(const_cast<AstObject *>(frame.
getRawPtr()),
"%s", options.c_str()))) {
76 std::shared_ptr<NormMap>
copy()
const {
return std::static_pointer_cast<NormMap>(
copyPolymorphic()); }
80 return copyImpl<NormMap, AstNormMap>();
84 explicit NormMap(AstNormMap *rawptr) :
Mapping(reinterpret_cast<AstMapping *>(rawptr)) {
86 std::ostringstream os;
87 os <<
"this is a " <<
getClassName() <<
", which is not a NormMap";
88 throw std::invalid_argument(os.str());
virtual std::shared_ptr< Object > copyPolymorphic() const override
Definition: NormMap.h:79
void assertOK(AstObject *rawPtr1=nullptr, AstObject *rawPtr2=nullptr)
Definition: base.cc:49
std::string getClassName() const
Definition: Object.h:139
AstObject const * getRawPtr() const
Definition: Object.h:292
std::shared_ptr< NormMap > copy() const
Return a deep copy of this object.
Definition: NormMap.h:76
virtual ~NormMap()
Definition: NormMap.h:67
NormMap(NormMap const &)=default
Copy constructor: make a deep copy.
NormMap & operator=(NormMap &&)=default
AST wrapper classes and functions.
Definition: attributes_channel.dox:1
NormMap(NormMap &&)=default
NormMap(AstNormMap *rawptr)
Construct a NormMap from a raw AST pointer.
Definition: NormMap.h:84
NormMap & operator=(NormMap const &)=delete
NormMap(Frame const &frame, std::string const &options="")
Definition: NormMap.h:61