OStreamIS.h

00001 #ifndef SCT_IS_OSTREAMIS_H
00002 #define SCT_IS_OSTREAMIS_H
00003 
00004 #include <is/info.h>
00005 #include "../OStream.h"
00006 
00007 namespace Sct {
00008 namespace IS {
00009     
00010   /* An OStream for writing to the information service */
00011 class OStreamIS : public virtual OStream {
00012 public:
00013     OStreamIS(ISostream& out) : out(out) {}
00014     
00015     virtual OStream & operator<<(bool val) {
00016     out << val;
00017     return *this;
00018     }
00019     
00020     virtual OStream & operator<<(char val) {
00021     out << val;
00022     return *this;
00023     }
00024     
00025     virtual OStream & operator<<(unsigned char val) {
00026     out << val;
00027     return *this;
00028     }
00029     
00030     virtual OStream & operator<<(short val) {
00031     out << val;
00032     return *this;
00033     }
00034     
00035     virtual OStream & operator<<(unsigned short val) {
00036     out << val;
00037     return *this;
00038     }
00039     
00040     virtual OStream & operator<<(int val) {
00041     out << val;
00042     return *this;
00043     }
00044     
00045     virtual OStream & operator<<(unsigned int val) {
00046     out << val;
00047     return *this;
00048     }
00049     
00050     virtual OStream & operator<<(long val) {
00051     out << val;
00052     return *this;
00053     }
00054     
00055     virtual OStream & operator<<(unsigned long val) {
00056     out << val;
00057     return *this;
00058     }
00059     
00060     virtual OStream & operator<<(double val) {
00061     out << val;
00062     return *this;
00063     }
00064     
00065     virtual OStream & operator<<(float val) {
00066     out << val;
00067     return *this;
00068     }
00069     
00070     virtual OStream & operator<<(const std::string & val) {
00071     out << val;
00072     return *this;
00073     }
00074     
00075     virtual OStream & operator<<(OWLDate & val) {
00076     out << val;
00077     return *this;
00078     }
00079     
00080     virtual OStream & operator<<(OWLTime & val) {
00081     out << val;
00082     return *this;
00083     }
00084     
00085 
00086     virtual OStream & operator<<(const char * str) {
00087     out << str;
00088     return *this;
00089     }
00090     
00091     virtual OStream & operator<<(const unsigned char * str)  {
00092     out << str;
00093     return *this;
00094     }
00095     
00096     
00097     virtual OStream & put(const bool* p, size_t size) {
00098     out.put(p, size);
00099     return *this;
00100     }
00101     
00102     virtual OStream & put(const char* p, size_t size){
00103     out.put(p, size);
00104     return *this;
00105     }
00106     
00107     virtual OStream & put(const unsigned char* p, size_t size) {
00108     out.put(p, size);
00109     return *this;
00110     }
00111     
00112     virtual OStream & put(const short* p, size_t size) {
00113     out.put(p, size);
00114     return *this;
00115     }
00116     
00117     virtual OStream & put(const unsigned short* p, size_t size) {
00118     out.put(p, size);
00119     return *this;
00120     }
00121     
00122     virtual OStream & put(const int* p, size_t size) {
00123     out.put(p, size);
00124     return *this;
00125     }
00126     
00127     virtual OStream & put(const unsigned int* p, size_t size) {
00128     out.put(p, size);
00129     return *this;
00130     }
00131     
00132     virtual OStream & put(const long* p, size_t size) {
00133     out.put(p, size);
00134     return *this;
00135     }
00136     
00137     virtual OStream & put(const unsigned long* p, size_t size) {
00138     out.put(p, size);
00139     return *this;
00140     }
00141     
00142     virtual OStream & put(const float* p, size_t size) {
00143     out.put(p, size);
00144     return *this;
00145     }
00146     
00147     virtual OStream & put(const double* p, size_t size) {
00148     out.put(p, size);
00149     return *this;
00150     }
00151     
00152     virtual OStream & put(const std::string* p, size_t size) {
00153     out.put(p, size);
00154     return *this;
00155     }
00156     
00157     virtual OStream & put(const OWLDate* p, size_t size) {
00158     out.put(p, size);
00159     return *this;
00160     }
00161     
00162     virtual OStream & put(const OWLTime* p, size_t size) {
00163     out.put(p, size);
00164     return *this;
00165     }
00166     
00167     
00168 private:
00169     ISostream& out;
00170 };
00171 }
00172 }
00173 #endif //SCT_IS_OSTREAMIS_H

Generated on Mon Feb 6 14:01:24 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6