|
Isis 3.0 Object Programmers' Reference |
Home |
00001 #ifndef StreamExporter_h 00002 #define StreamExporter_h 00003 00027 #include "ImageExporter.h" 00028 #include "PixelType.h" 00029 00030 namespace Isis { 00047 class StreamExporter : public ImageExporter { 00048 public: 00049 StreamExporter(); 00050 virtual ~StreamExporter(); 00051 00052 virtual void setGrayscale(ExportDescription &desc); 00053 virtual void setRgb(ExportDescription &desc); 00054 virtual void setRgba(ExportDescription &desc); 00055 00056 void setType(ExportDescription &desc); 00057 00058 protected: 00059 virtual void initialize(ExportDescription &desc); 00060 00061 PixelType getPixelType() const; 00062 00063 virtual void writeGrayscale(vector<Buffer *> &in) const; 00064 virtual void writeRgb(vector<Buffer *> &in) const; 00065 virtual void writeRgba(vector<Buffer *> &in) const; 00066 00071 virtual void createBuffer() = 0; 00072 00081 virtual void setBuffer(int s, int b, int dn) const = 0; 00082 00089 virtual void writeLine(int l) const = 0; 00090 00091 private: 00093 PixelType m_type; 00094 }; 00095 }; 00096 00097 00098 #endif