4 #include "Kernel_global.h"
5 #include "georefadapter.h"
9 class GeoRefImplementation;
15 virtual double pixelSize()
const = 0;
16 virtual bool compute() = 0;
18 virtual Size<> size()
const=0;
19 virtual void size(
const Size<>& sz)=0;
20 virtual bool centerOfPixel()
const=0;
21 virtual void centerOfPixel(
bool yesno)=0;
33 double pixelSize()
const;
41 void size(
const Size<>& sz);
42 bool centerOfPixel()
const;
43 void centerOfPixel(
bool yesno);
48 template<
typename GrfT> QSharedPointer<GrfT> impl(){
49 QSharedPointer<GrfT> sptr = _georefImpl.dynamicCast<GrfT>();
51 throw ErrorObject(TR(ERR_COULD_NOT_CONVERT_2).arg(
"georef").arg(GrfT::typeName()));
54 template<
typename GrfT>
bool grfType()
const {
55 return dynamic_cast<GrfT *
>(_georefImpl.data()) != 0;
60 IlwisTypes ilwisType()
const;
64 const QScopedPointer<GeoRefAdapter> &adapter()
const;
66 QSharedPointer<GeoRefImplementation> _georefImpl;
67 QScopedPointer<GeoRefAdapter> _adapter;
76 #endif // GEOREFERENCE_H