00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _plObject_h_
00019 #define _plObject_h_
00020
00021 #include <sstream>
00022 #include <string>
00023 #include <iostream>
00024
00025 #ifdef PL_RAVI_SHELL
00026 #include <strstream.h>
00027 #endif
00028
00033 #ifdef PL_RAVI_SHELL
00034 extern char objectInfoBfr [4048];
00035 #endif
00036
00037 class plObject
00038 {
00039
00040 protected:
00042 virtual void Output(std::ostream &out) const;
00043
00044 public:
00046 std::string toString()const
00047 {
00048 std::stringstream s;
00049 Output(s);
00050 return s.str();
00051 }
00052
00053 public:
00055 virtual ~plObject(){};
00056
00057 #ifdef PL_RAVI_SHELL
00058 char* ObjectInfo(void);
00059 #endif
00060
00062 friend std::ostream& operator<<( std::ostream &out, const plObject& object);
00063
00064 };
00065
00066
00067 #endif