32#define IMAGELIKE_H_ "ImageLike 1.1, 2020/02 Markus.Peura@fmi.fi"
75 std::cerr << __FILE__ << __FUNCTION__ <<
" setConf/Geom has no effect\n";
76 conf.setConf(image.conf);
110 bool typeIsSet()
const {
111 return conf.
caster.typeIsSet();
116 const Geometry & getGeometry()
const {
122 size_t getWidth()
const {
123 return conf.getWidth();
127 size_t getHeight()
const {
128 return conf.getHeight();
132 size_t getArea()
const {
133 return conf.getArea();
137 size_t getChannelCount()
const {
143 size_t getImageChannelCount()
const {
144 return conf.getImageChannelCount();
149 size_t getAlphaChannelCount()
const {
150 return conf.getAlphaChannelCount();
155 bool hasAlphaChannel()
const {
156 return conf.hasAlphaChannel();
161 size_t getVolume()
const {
162 return conf.getVolume();
166 bool isEmpty()
const {
167 return conf.isEmpty();
173 operator bool()
const {
174 return !conf.isEmpty();
192 void setCoordinatePolicy(
const T & policy){
198 void setCoordinatePolicy(EdgePolicy::index_t xUnderFlowPolicy, EdgePolicy::index_t yUnderFlowPolicy, EdgePolicy::index_t xOverFlowPolicy, EdgePolicy::index_t yOverFlowPolicy){
199 conf.
coordinatePolicy.set(xUnderFlowPolicy, yUnderFlowPolicy, xOverFlowPolicy, yOverFlowPolicy);
222 void setScaling(
double scale,
double offset){
231 return drain::Type::call<drain::typeLimiter<T> >(conf.
caster.
getType());
const std::type_info & getType() const
Returns type_info of the current type.
Definition Caster.h:154
Linear scaling and physical range for image intensities.
Definition ValueScaling.h:63
virtual void setScaling(double scale, double offset)
Set linear scaling.
Definition ValueScaling.h:136
virtual const ValueScaling & getScaling() const
Get linear scaling.
Definition ValueScaling.h:147
Policies for coordinate underflows and overflows.
Definition CoordinatePolicy.h:100
Caster caster
In base class(es), mainly for storing storage type. In derived classes, also for value conversions.
Definition ImageConf.h:97
Definition Geometry.h:143
size_t getChannelCount() const
Set...
Definition Geometry.h:260
CoordinatePolicy coordinatePolicy
Rules to handle under- and overflows of horizontal and vertical coordinates.
Definition ImageConf.h:383
A base class for images.
Definition ImageLike.h:61
CoordinatePolicy & getCoordinatePolicy()
Coord policy.
Definition ImageLike.h:185
const CoordinatePolicy & getCoordinatePolicy() const
Coord policy.
Definition ImageLike.h:179
const std::type_info & getType() const
Get the storage type.
Definition ImageLike.h:105
Class for ensuring that variable of type D remains within limits of type S.
Definition TypeUtils.h:98