00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef HxImageRepRgbSource_h
00010 #define HxImageRepRgbSource_h
00011
00012 #include <OB/CORBA.h>
00013 #include "HxCorbaImageRep_skel.h"
00014 #include "HxImageRep.h"
00015
00016
00018 class HxImageRepRgbSource : public POA_HxCorba::ImageRepRgbSource,
00019 public PortableServer::RefCountServantBase
00020 {
00021 public:
00022 HxImageRepRgbSource(const HxImageRep& img);
00023 ~HxImageRepRgbSource();
00024
00025 virtual HxCorba::RgbSeq* getRgb()
00026 throw(CORBA::SystemException);
00027 virtual void fillRgb(HxCorba::RgbBuffer_ptr buf)
00028 throw(CORBA::SystemException);
00029
00030 virtual void setDisplayMode(const char* displayMode)
00031 throw(CORBA::SystemException);
00032 virtual char* getDisplayMode()
00033 throw(CORBA::SystemException);
00034 virtual void setSize(const HxCorba::Sizes& newSize)
00035 throw(CORBA::SystemException);
00036 virtual void setMaxSize(const HxCorba::Sizes& maxSize)
00037 throw(CORBA::SystemException);
00038 virtual void scale(CORBA::Float factor)
00039 throw(CORBA::SystemException);
00040
00041 virtual void setTransferSize(CORBA::Long nLines)
00042 throw(CORBA::SystemException);
00043 virtual CORBA::Long getTransferSize()
00044 throw(CORBA::SystemException);
00045 virtual void setTransferPos(CORBA::Long line)
00046 throw(CORBA::SystemException);
00047 virtual CORBA::Long getTransferPos()
00048 throw(CORBA::SystemException);
00049
00050 virtual HxCorba::Sizes getSizes()
00051 throw(CORBA::SystemException);
00052 virtual HxCorba::Sizes getOriginalSizes()
00053 throw(CORBA::SystemException);
00054
00055 virtual void close()
00056 throw(CORBA::SystemException);
00057
00058 private:
00059
00060 HxImageRep _img;
00061 HxString _displayMode;
00062 int _resWidth;
00063 int _resHeight;
00064 int _nPixels;
00065 CORBA::Long* _data;
00066
00067 int _transPos;
00068 int _transSize;
00069 };
00070
00071 #endif