mummy
1.0.3
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
MummyLineOrientedTextFileReader.h
Go to the documentation of this file.
1
//----------------------------------------------------------------------------
2
// MummyLineOrientedTextFileReader.h
3
//
4
// Author(s) : David Cole
5
//
6
// Copyright (C) 2007 Kitware, Inc.
7
//----------------------------------------------------------------------------
8
9
#ifndef _MummyLineOrientedTextFileReader_h_
10
#define _MummyLineOrientedTextFileReader_h_
11
12
#include "
MummyUtilities.h
"
// first mummy include for root classes
13
14
#include "gxsys/stl/string"
15
#include "gxsys/stl/vector"
16
17
18
//----------------------------------------------------------------------------
24
class
LineData
25
{
26
public
:
27
LineData
(
const
gxsys_stl::string &line,
const
bool
isLineComment,
const
int
btxEtxLevel) :
28
Line
(line),
IsLineComment
(isLineComment),
BtxEtxLevel
(btxEtxLevel)
29
{
30
}
31
32
gxsys_stl::string
Line
;
33
bool
IsLineComment
;
34
int
BtxEtxLevel
;
35
};
36
37
38
//----------------------------------------------------------------------------
45
class
MummyLineOrientedTextFileReader
46
{
47
public
:
48
MummyLineOrientedTextFileReader
();
49
virtual
~MummyLineOrientedTextFileReader
();
50
51
//--------------------------------------------------------------------------
56
virtual
gxsys_stl::string
GetFileName
();
57
58
//--------------------------------------------------------------------------
63
virtual
void
SetFileName
(
const
char
*filename);
64
65
//--------------------------------------------------------------------------
71
virtual
bool
GetExcludeMarkedLines
();
72
73
//--------------------------------------------------------------------------
79
virtual
void
SetExcludeMarkedLines
(
bool
excludeMarkedLines);
80
81
//--------------------------------------------------------------------------
87
virtual
gxsys_stl::string
GetBeginExcludeRegex
();
88
89
//--------------------------------------------------------------------------
97
virtual
void
SetBeginExcludeRegex
(
const
gxsys_stl::string& beginExcludeRegex);
98
99
//--------------------------------------------------------------------------
105
virtual
gxsys_stl::string
GetEndExcludeRegex
();
106
107
//--------------------------------------------------------------------------
115
virtual
void
SetEndExcludeRegex
(
const
gxsys_stl::string& endExcludeRegex);
116
117
//--------------------------------------------------------------------------
126
virtual
void
Update
();
127
128
//--------------------------------------------------------------------------
133
virtual
unsigned
int
GetNumberOfLines
();
134
135
//--------------------------------------------------------------------------
143
virtual
gxsys_stl::string
GetLine
(
unsigned
int
lineNumber);
144
145
//--------------------------------------------------------------------------
152
virtual
bool
GetIsLineComment
(
unsigned
int
lineNumber);
153
154
//--------------------------------------------------------------------------
164
virtual
int
GetBtxEtxLevel
(
unsigned
int
lineNumber);
165
166
//--------------------------------------------------------------------------
174
virtual
bool
IsLineExcluded
(
unsigned
int
lineNumber);
175
176
//--------------------------------------------------------------------------
185
186
virtual
void
GetCommentBlockBefore
(
unsigned
int
lineNumber, gxsys_stl::vector<gxsys_stl::string>& block,
unsigned
int
smallestAcceptableLineNumber);
187
188
//--------------------------------------------------------------------------
193
virtual
void
GetFirstCommentBlock
(gxsys_stl::vector<gxsys_stl::string>& block);
194
195
private
:
196
gxsys_stl::string
FileName
;
197
gxsys_stl::vector<LineData>
Lines
;
198
bool
ExcludeMarkedLines
;
199
gxsys_stl::string
BeginExcludeRegex
;
200
gxsys_stl::string
EndExcludeRegex
;
201
};
202
203
#endif // _MummyLineOrientedTextFileReader_h_
Generated on Sun Apr 28 2013 22:52:33 for mummy by
1.8.3.1