VR-Link API Documentation for HLA 1.3
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vlutil
vlString.h
Go to the documentation of this file.
1
/****************************************************************************
2
* Copyright (c) 2014 VT MAK
3
* All rights reserved.
4
****************************************************************************/
5
9
10
#pragma once
11
12
#include <
vlutil/vlMachineTypes.h
>
13
#include <vector>
14
#include <iosfwd>
15
16
#ifdef DtUSE_UTILITIES_NAMESPACE
17
namespace
DtUSE_UTILITIES_NAMESPACE
18
{
19
#endif
20
25
class
DT_DLL_VLUTIL
DtString
26
{
27
public
:
28
30
DtString
();
31
33
DtString
(
const
char
* str );
34
36
DtString
(
const
char
* str,
int
length );
37
39
DtString
(
const
std::string& str );
40
42
DtString
(
const
DtString
& orig );
43
50
51
DtString
(
double
val );
52
DtString
(
int
val );
53
DtString
(
long
val );
54
DtString
(
char
val );
55
DtString
(
unsigned
int
val );
56
DtString
(
unsigned
long
val );
57
59
61
virtual
~
DtString
();
62
65
66
virtual
DtString
& operator = (
const
char
* orig );
67
virtual
DtString
& operator = (
const
DtString
& orig );
68
70
72
virtual
operator
const
char
*()
const
;
73
75
virtual
DtString
* clone()
const
;
76
79
80
friend
DT_DLL_VLUTIL
bool
operator <
(
const
DtString
& str1,
const
DtString
& str2 );
81
friend
DT_DLL_VLUTIL
bool
operator >
(
const
DtString
& str1,
const
DtString
& str2 );
82
friend
DT_DLL_VLUTIL
bool
operator ==
(
const
DtString
& str1,
const
DtString
& str2 );
83
friend
DT_DLL_VLUTIL
bool
operator !=
(
const
DtString
& str1,
const
DtString
& str2 );
84
friend
DT_DLL_VLUTIL
bool
operator <= (
const
DtString
& str1,
const
DtString
& str2 );
85
friend
DT_DLL_VLUTIL
bool
operator >= (
const
DtString
& str1,
const
DtString
& str2 );
86
87
virtual
bool
operator <
(
const
char
* str )
const
;
88
virtual
bool
operator >
(
const
char
* str )
const
;
89
virtual
bool
operator ==
(
const
char
* str )
const
;
90
virtual
bool
operator !=
(
const
char
* str )
const
;
91
virtual
bool
operator <= (
const
char
* str )
const
;
92
virtual
bool
operator >= (
const
char
* str )
const
;
93
95
99
100
virtual
bool
caseCompare(
const
char
* str )
const
;
101
virtual
bool
caseCompare(
const
DtString
& str )
const
;
102
104
107
108
friend
DT_DLL_VLUTIL
DtString
operator +
(
const
char
* str1,
const
DtString
& str2 );
109
friend
DT_DLL_VLUTIL
DtString
operator +
(
const
DtString
& str1,
const
DtString
& str2 );
110
111
virtual
DtString
operator +
(
const
char
* str )
const
;
112
virtual
DtString
& operator += (
const
char
* str );
113
virtual
DtString
& operator += (
const
DtString
& str );
114
116
119
120
virtual
char
& operator [] (
int
index );
121
virtual
const
char
& operator [] (
int
index )
const
;
122
124
131
132
virtual
bool
snipFront(
const
char
ch,
bool
toLastCh =
false
);
133
virtual
bool
snipBack(
const
char
ch,
bool
fromFirstCh =
false
);
135
137
138
virtual
bool
chompFront();
139
virtual
bool
chompBack();
141
144
virtual
void
tokenize(
const
char
delimiter, std::vector<DtString>& tokens )
const
;
145
149
virtual
int
toInt(
bool
* ok = 0 )
const
;
150
154
virtual
unsigned
int
toUInt(
bool
* ok = 0 )
const
;
155
159
virtual
float
toFloat(
bool
* ok = 0 )
const
;
160
164
virtual
double
toDouble(
bool
* ok = 0 )
const
;
165
169
virtual
bool
toBoolean(
bool
* ok = 0 )
const
;
170
172
virtual
void
toUpper();
173
175
virtual
void
toLower();
176
180
virtual
int
findChar(
const
char
ch );
181
185
virtual
int
findLastChar(
const
char
ch );
186
190
virtual
int
findString(
const
DtString
&
string
)
const
;
191
195
virtual
int
findLastString(
const
DtString
&
string
);
196
197
bool
snipFrontToLast(
const
char
ch )
198
{
199
return
snipFront( ch,
true
);
200
}
201
202
bool
snipBackToFirst(
const
char
ch )
203
{
204
return
snipBack( ch,
true
);
205
}
206
208
virtual
int
count(
const
char
ch )
const
;
209
212
virtual
int
length()
const
;
213
215
virtual
int
size()
const
;
216
218
virtual
std::string stdString()
const
;
219
222
virtual
const
char
* string()
const
;
223
225
virtual
const
char
* c_str()
const
;
226
228
virtual
bool
isEmpty()
const
;
229
232
virtual
DtString
section(
const
char
sep,
int
start,
int
end = -1)
const
;
233
234
public
:
235
237
static
const
DtString
& nullString();
238
239
protected
:
240
241
friend
DT_DLL_VLUTIL
std::ostream&
operator <<
( std::ostream& os,
const
DtString
& str );
242
friend
DT_DLL_VLUTIL
std::istream&
operator >>
( std::istream& is,
DtString
& str );
243
248
void
clear();
249
252
void
setString(
const
char
* str );
253
254
protected
:
255
256
enum
257
{
258
theDefaultBufferSize = 64
259
};
260
261
char
myDefaultBuffer[theDefaultBufferSize];
262
char
*
myString
;
263
264
bool
myStringAlloced
;
265
unsigned
int
myBufSize
;
266
267
static
const
int
theMaxInsertionStringSize
;
268
269
};
270
271
272
inline
bool
DtString::isEmpty
()
const
273
{
274
return
(myString[0] ==
'\0'
);
275
}
276
277
#ifdef DtUSE_UTILITIES_NAMESPACE
278
}
279
#endif
Document ID: Generated on Fri May 15 06:36:13 EDT 2015 from SVN revision 153263
Copyright © 2005-2014 VT MÄK. All Rights Reserved (
www.mak.com
)