Text.hxx
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _TEXT_HXX_
00023 #define _TEXT_HXX_
00024 #include <iosfwd>
00025 #include <string>
00026 #if defined( _MSC_VER ) && ( _MSC_VER < 1310 )
00027 #include <sstream>
00028 #endif
00029 #include "TypeInfo.hxx"
00030
00031 namespace CLAM
00032 {
00038 class Text : public std::basic_string<char>
00039 {
00040 public:
00041 Text()
00042 {
00043 }
00044 Text(const std::string & value)
00045 : std::basic_string<char>(value)
00046 {
00047 }
00048 Text(const char * value)
00049 : std::basic_string<char>(value)
00050 {
00051 }
00052 };
00053
00054 std::istream & operator >> (std::istream & stream, Text & text);
00055
00056 #if defined( _MSC_VER ) && ( _MSC_VER < 1310 )
00057
00061 inline std::istream& operator>>( std::istringstream& stream, CLAM::Text& text )
00062 {
00063 std::istream & basestream = stream;
00064 return basestream >> text;
00065 }
00066 #endif
00067
00068 CLAM_TYPEINFOGROUP(BasicCTypeInfo, Text);
00069 }
00070
00071
00072 #endif // _TEXT_HXX_
00073