VR-Link API Documentation for DIS
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) 2015 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
241
static
const
DtString
& nullId();
242
243
protected
:
244
245
friend
DT_DLL_VLUTIL
std::ostream&
operator <<
( std::ostream& os,
const
DtString
& str );
246
friend
DT_DLL_VLUTIL
std::istream&
operator >>
( std::istream& is,
DtString
& str );
247
252
void
clear();
253
256
void
setString(
const
char
* str );
257
258
protected
:
259
260
enum
261
{
262
theDefaultBufferSize = 64
263
};
264
265
char
myDefaultBuffer[theDefaultBufferSize];
266
char
*
myString
;
267
268
bool
myStringAlloced
;
269
unsigned
int
myBufSize
;
270
271
static
const
int
theMaxInsertionStringSize
;
272
273
};
274
275
276
inline
bool
DtString::isEmpty
()
const
277
{
278
return
(myString[0] ==
'\0'
);
279
}
280
281
#ifdef DtUSE_UTILITIES_NAMESPACE
282
}
283
#endif
Document ID: Generated on Tue Mar 1 02:56:17 EST 2016 from SVN revision 162687
Copyright © 2005-2014 VT MÄK. All Rights Reserved (
www.mak.com
)