IniFile
Lade ...
Suche ...
Keine Treffer
IniSection.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_INISECTION_H
2#define INC_INISECTION_H
3//-----------------------------------------------------------------------------
36//-----------------------------------------------------------------------------
37#include "IniFileTypes.h"
38#include "IniLine.h"
39#include "PtlTDVList.h"
40//-----------------------------------------------------------------------------
42namespace eut
43{
44 class Blob;
45}
46//-----------------------------------------------------------------------------
47namespace ini
48{
49 //---------------------------------------------------------------------------
50 #ifdef _MSC_VER
51 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von Clients von Klasse 'Typ2' verwendet wird */
52 #pragma warning( disable : 4251 )
53 #endif
54 //---------------------------------------------------------------------------
71 {
72 private:
73 //============== Friends
74 //------------------------------------------------------------------------
75 friend class LineFactory;
76 friend class File;
77 //------------------------------------------------------------------------
78
79 //============== Attribute ============
80 //-----------------------------------------------------------------------
91 //-----------------------------------------------------------------------
92
93 public:
94 //============== Konstruktoren ============
95 //-----------------------------------------------------------------------
109 Section( const std::string & sCharLine );
110 //-----------------------------------------------------------------------
120 virtual ~Section();
121 //-----------------------------------------------------------------------
122
123 protected:
124 //-----------------------------------------------------------------------
142 Section( const std::string & sCharLine, LINE_TYPE eLineType );
143 //-----------------------------------------------------------------------
154 //-----------------------------------------------------------------------
155
156 private:
157 //============== Konstruktoren
158 //-----------------------------------------------------------------------
168 Section( const Section & );
169 //-----------------------------------------------------------------------
170
171 public:
172 //============== Methoden
173 //-----------------------------------------------------------------------
185 std::string getName() const;
186 //-----------------------------------------------------------------------
198 void setName( const std::string & sName);
199 //-----------------------------------------------------------------------
237 int getSectionLine( Line *& prRetVal, std::size_t nPosition, ptl::SeekMode eMode );
238 //-----------------------------------------------------------------------
271 int insertSectionLine( Line * pIniLine,
272 ptl::InsertPosition eInsertPosition = ptl::InsertCURRENT,
273 ptl::VH eBeforeBehind = ptl::BEHIND );
274 //-----------------------------------------------------------------------
299 //-----------------------------------------------------------------------
312 //-----------------------------------------------------------------------
326 std::size_t getSectionSize();
327 //-----------------------------------------------------------------------
359 int getKeyLine( Line *& prRetVal, const std::string & sValueVariable );
360 //-----------------------------------------------------------------------
378 int getKeyValue( std::string & rsValue, const std::string sValueVariable );
379 //-----------------------------------------------------------------------
380
381 protected:
382 //============== Methoden
383 //-----------------------------------------------------------------------
399 //-----------------------------------------------------------------------
400
401 private:
402 //============== Operatoren
403 //-----------------------------------------------------------------------
413 Section & operator= ( const Section & );
414 //-----------------------------------------------------------------------
415 };
416 //---------------------------------------------------------------------------
417 #ifdef _MSC_VER
418 /* 'Bezeichner': Klasse 'Typ' benötigt eine DLL-Schnittstelle, die von Clients von Klasse 'Typ2' verwendet wird */
419 #pragma warning( default : 4251 )
420 #endif
421 //---------------------------------------------------------------------------
422} // namespace ini
423//-----------------------------------------------------------------------------
424#endif
Für jede Bibliothek, hier 'IniFile' gibt es eine Typen-Datei.
#define __ini_file_export_dll
Definition IniFileTypes.h:54
Header für Line
Header für TDVList
Diese Klasse erlaubt das Bearbeiten eines Blobs (einfügen, kopieren, durchsuchen etc....
Definition EuBlob.h:60
Eine INI-Datei beinhaltet Informationen für Programme.
Definition IniFile.h:298
Diese Klasse macht aus Zeilen einer INI-Datei Objekte der Typen Line, Section oder Key.
Definition IniLineFactory.h:61
Ist eine Kommentartzeile, aber auch Oberklasse für Section und Key.
Definition IniLine.h:62
Eine Sektion kann nur einmalig in einer INI-Datei vorkommen, steht in eckigen Klammern und hat in der...
Definition IniSection.h:71
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:90
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-Listenklasse für Zeiger auf Objekte.
Definition PtlTDVList.h:98
Definition EuBlob.h:43
Definition IniFile.h:52
LINE_TYPE
Definition IniFileTypes.h:120
InsertPosition
Definition PtlListTypes.h:187
@ InsertCURRENT
Definition PtlListTypes.h:190
VH
Definition PtlListTypes.h:143
@ BEHIND
Definition PtlListTypes.h:145
ElementPosition
Definition PtlListTypes.h:106
@ CURRENT_POS
Definition PtlListTypes.h:109
SeekMode
Definition PtlListTypes.h:355