GlobalObjects
Loading...
Searching...
No Matches
IniSection.h
Go to the documentation of this file.
1#ifndef INC_INISECTION_H
2#define INC_INISECTION_H
3//-----------------------------------------------------------------------------
51//-----------------------------------------------------------------------------
52#include "IniFileTypes.h"
53#include "IniLine.h"
54#include "PtlTDVList.h"
55//-----------------------------------------------------------------------------
57namespace eut
58{
59 class Blob;
60}
61//-----------------------------------------------------------------------------
62namespace ini
63{
64 //---------------------------------------------------------------------------
65 #ifdef _MSC_VER
66 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von Clients von Klasse 'Typ2' verwendet wird */
67 #pragma warning( disable : 4251 )
68 #endif
69 //---------------------------------------------------------------------------
86 {
87 private:
88 //============== Friends
89 //------------------------------------------------------------------------
90 friend class LineFactory;
91 friend class File;
92 //------------------------------------------------------------------------
93
94 //============== Attribute ============
95 //-----------------------------------------------------------------------
106 //-----------------------------------------------------------------------
107
108 public:
109 //============== Konstruktoren ============
110 //-----------------------------------------------------------------------
124 Section( const std::string & sCharLine );
125 //-----------------------------------------------------------------------
135 virtual ~Section();
136 //-----------------------------------------------------------------------
137
138 protected:
139 //-----------------------------------------------------------------------
157 Section( const std::string & sCharLine, LINE_TYPE eLineType );
158 //-----------------------------------------------------------------------
169 //-----------------------------------------------------------------------
170
171 private:
172 //============== Konstruktoren
173 //-----------------------------------------------------------------------
183 Section( const Section & );
184 //-----------------------------------------------------------------------
185
186 public:
187 //============== Methoden
188 //-----------------------------------------------------------------------
200 std::string getName() const;
201 //-----------------------------------------------------------------------
213 void setName( const std::string & sName);
214 //-----------------------------------------------------------------------
252 int getSectionLine( Line *& prRetVal, std::size_t nPosition, ptl::SeekMode eMode );
253 //-----------------------------------------------------------------------
286 int insertSectionLine( Line * pIniLine,
287 ptl::InsertPosition eInsertPosition = ptl::InsertCURRENT,
288 ptl::VH eBeforeBehind = ptl::BEHIND );
289 //-----------------------------------------------------------------------
314 //-----------------------------------------------------------------------
327 //-----------------------------------------------------------------------
341 std::size_t getSectionSize();
342 //-----------------------------------------------------------------------
374 int getKeyLine( Line *& prRetVal, const std::string & sValueVariable );
375 //-----------------------------------------------------------------------
393 int getKeyValue( std::string & rsValue, const std::string sValueVariable );
394 //-----------------------------------------------------------------------
395
396 protected:
397 //============== Methoden
398 //-----------------------------------------------------------------------
414 //-----------------------------------------------------------------------
415
416 private:
417 //============== Operatoren
418 //-----------------------------------------------------------------------
428 Section & operator= ( const Section & );
429 //-----------------------------------------------------------------------
430 };
431 //---------------------------------------------------------------------------
432 #ifdef _MSC_VER
433 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von Clients von Klasse 'Typ2' verwendet wird */
434 #pragma warning( default : 4251 )
435 #endif
436 //---------------------------------------------------------------------------
437} // namespace ini
438//-----------------------------------------------------------------------------
439#endif
For each library, here 'IniFile' there is a type definition file.
#define __ini_file_export_dll
Definition IniFileTypes.h:68
Header for Line
Header for TDVList
This class allows to edit a blob (insert, copy, search etc.).
Definition EuBlob.h:75
An INI file contains information for programs.
Definition IniFile.h:313
This class turns lines of an INI file into objects of the types Line, Section or Key.
Definition IniLineFactory.h:76
Is a comment line, but also superclass for Section and Key.
Definition IniLine.h:77
A section can only appear once in an INI file, is enclosed in square brackets and usually has variabl...
Definition IniSection.h:86
std::string getName() const
int getKeyLine(Line *&prRetVal, const std::string &sValueVariable)
int insertSectionInBlob(eut::Blob &rBlob)
std::size_t getSectionSize()
Section(const std::string &sCharLine, LINE_TYPE eLineType)
int removeSectionLine(ptl::ElementPosition eFirstLastCurrent=ptl::CURRENT_POS)
virtual ~Section()
ptl::TDVList< Line > m_SektionList
Definition IniSection.h:105
void removeAllSectionLines()
int getKeyValue(std::string &rsValue, const std::string sValueVariable)
Section(const Section &)
int insertSectionLine(Line *pIniLine, ptl::InsertPosition eInsertPosition=ptl::InsertCURRENT, ptl::VH eBeforeBehind=ptl::BEHIND)
int getSectionLine(Line *&prRetVal, std::size_t nPosition, ptl::SeekMode eMode)
Section(const std::string &sCharLine)
void setName(const std::string &sName)
Template list class for pointers to objects.
Definition GloBaseRecordAttribute.h:57
Definition IniFile.h:62
Definition IniFile.h:67
LINE_TYPE
Definition IniFileTypes.h:134
InsertPosition
Definition PtlListTypes.h:201
@ InsertCURRENT
Definition PtlListTypes.h:204
VH
Definition PtlListTypes.h:157
@ BEHIND
Definition PtlListTypes.h:159
ElementPosition
Definition PtlListTypes.h:120
@ CURRENT_POS
Definition PtlListTypes.h:123
SeekMode
Definition PtlListTypes.h:369