00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef HxImgFunctor_h
00012 #define HxImgFunctor_h
00013
00014 #include "HxStd.h"
00015 #include "HxIoFwd.h"
00016 #include "HxSizes.h"
00017 #include "HxTagList.h"
00018 #include "HxImgFtorKey.h"
00019
00020 class HxImgFtorDescription;
00021
00022
00025 class L_HXIMAGEREP HxImgFunctor
00026 {
00027 public:
00029 HxImgFunctor(const HxImgFtorKey&);
00030
00032 virtual ~HxImgFunctor();
00033
00035 virtual STD_OSTREAM& put(STD_OSTREAM&) const;
00036
00040 virtual bool probeOp(HxTagList&) const;
00041
00042 protected:
00043
00044 HxImgFtorDescription* getDescription() const;
00045
00046 private:
00047
00048 HxImgFunctor();
00049
00050 HxImgFtorKey _key;
00051 };
00052
00053 inline STD_OSTREAM&
00054 operator<<(STD_OSTREAM& os, const HxImgFunctor& imgFtor)
00055 {
00056 return imgFtor.put(os);
00057 }
00058
00059 #endif