10 #ifndef lgrUtilityFunctions_H_
11 #define lgrUtilityFunctions_H_
14 #include <vlutil/vlNetTypes.h>
25 return sz + (sz & (size_t)0x01);
30 return sz + (sz & (int)0x01);
35 size_t align = sz & (size_t)0x03;
36 return align ? (sz + (size_t)4 - align) : sz;
39 inline unsigned int roundUpTo4(
unsigned int sz )
41 unsigned int align = sz & (
unsigned int)0x03;
42 return align ? (sz + (
unsigned int)4 - align) : sz;
47 int align = sz & (int)0x03;
48 return align ? (sz + (int)4 - align) : sz;
53 size_t align = sz & (size_t)0x07;
54 return align ? (sz + (size_t)8 - align) : sz;
58 inline unsigned int roundUpTo8(
unsigned int sz )
60 unsigned int align = sz & (
unsigned int)0x07;
61 return align ? (sz + (
unsigned int)8 - align) : sz;
68 int align = sz & (int)0x07;
69 return align ? (sz + (int)8 - align) : sz;
74 DtStringVector::const_iterator stringIter = stringList.begin();
75 DtStringVector::const_iterator stringEnd = stringList.end();
76 if (stringIter != stringEnd)
78 deliminatedString = *stringIter;
79 for ( ++stringIter; stringIter != stringEnd; ++stringIter)
81 deliminatedString += deliminator;
82 deliminatedString += *stringIter;
89 bool allowEmptyTokens=
false,
bool appendToExistingList=
false)
92 if (!appendToExistingList)
97 while (!buffer.isEmpty())
100 if (!buffer.snipFront(deliminator))
102 buffer = DtString::nullString();
104 token.snipBack(deliminator,
true);
107 if (allowEmptyTokens || !token.isEmpty())
109 stringList.push_back(token);
112 return stringList.size();