OBTAbstractConfigurationFileParser.h

Go to the documentation of this file.
00001 #ifndef OBTAbstractConfigurationFileParser_H
00002 #define OBTAbstractConfigurationFileParser_H
00003 
00004 #include <string>
00005 #include "OBT.h"
00006 
00007 namespace OBT
00008 {
00009         class ConfigurationItem ;
00010 
00023         class OBT_API AbstractConfigurationFileParser
00024         {
00025         public:
00026 
00030                 virtual ~AbstractConfigurationFileParser() ;
00031 
00032         protected:
00033 
00037                 AbstractConfigurationFileParser( const char* fileName, ConfigurationItem& configurationItem = touchRoot() ) ;
00038 
00043                 const char* getBuffer() const ;
00044 
00049                 unsigned long getBufferSize() const ;
00050 
00057                 static ConfigurationItem& touchChild( ConfigurationItem& configurationItem, unsigned int childNumber ) ;
00058 
00063                 static ConfigurationItem& touchRoot() ;
00064 
00065         private:
00066 
00070                 AbstractConfigurationFileParser( const AbstractConfigurationFileParser& fileParser ) ;
00071 
00075                 const AbstractConfigurationFileParser& operator=( const AbstractConfigurationFileParser& fileParser ) ;
00076 
00078                 std::string _buffer ;
00079 
00081                 ConfigurationItem& _configurationItem ;
00082         } ;
00083 
00084         //-------------------------------------------------------------------------
00085         // getBuffer()
00086         //-------------------------------------------------------------------------
00087         inline const char* 
00088                 AbstractConfigurationFileParser::getBuffer() const
00089         {
00090                 return _buffer.c_str() ;
00091         }
00092 
00093         //-------------------------------------------------------------------------
00094         // getBufferSize()
00095         //-------------------------------------------------------------------------
00096         inline unsigned long 
00097                 AbstractConfigurationFileParser::getBufferSize() const
00098         {
00099                 return static_cast<unsigned long>( _buffer.length() ) ;
00100         }
00101 }
00102 
00103 #endif

Generated on Wed Oct 1 11:34:04 2008 for OBT by  doxygen 1.5.3