13 #ifndef _FBXSDK_CORE_BASE_STRING_H_ 14 #define _FBXSDK_CORE_BASE_STRING_H_ 34 #if defined(FBXSDK_ENV_WIN) 40 FBXSDK_DLL void FbxWCToAnsi(
const wchar_t* pInWideChar,
char*& pOutANSI,
size_t* pOutANSISize=
NULL);
47 FBXSDK_DLL void FbxAnsiToWC(
const char* pInANSI,
wchar_t*& pOutWideChar,
size_t* pOutWideCharSize=
NULL);
54 FBXSDK_DLL void FbxAnsiToUTF8(
const char* pInANSI,
char*& pOutUTF8,
size_t* pOutUTF8Size=
NULL);
61 FBXSDK_DLL void FbxUTF8ToAnsi(
const char* pInUTF8,
char*& pOutANSI,
size_t* pOutANSISize=
NULL);
87 FbxString(
char pChar,
size_t pNbRepeat=1);
92 FbxString(
const char* pCharPtr,
size_t pLength);
114 size_t GetLen()
const;
121 bool IsEmpty()
const;
129 char& operator[](
int pIndex);
134 char operator[](
int pIndex)
const;
140 const char* Buffer()
const;
157 const FbxString& operator=(
const char* pString);
165 const FbxString& operator=(
float pValue);
169 const FbxString& operator=(
double pValue);
181 const FbxString& operator+=(
const char* pString);
189 const FbxString& operator+=(
float pValue);
193 const FbxString& operator+=(
double pValue);
197 bool operator== (
const FbxString& pString)
const;
201 bool operator!= (
const FbxString& pString)
const;
205 bool operator< (
const FbxString& pString)
const;
209 bool operator<= (
const FbxString& pString)
const;
213 bool operator>= (
const FbxString& pString)
const;
217 bool operator> (
const FbxString& pString)
const;
221 bool operator== (
const char* pString)
const;
225 bool operator!= (
const char* pString)
const;
229 bool operator< (
const char* pString)
const;
233 bool operator<= (
const char* pString)
const;
237 bool operator>= (
const char* pString)
const;
241 bool operator> (
const char* pString)
const;
294 operator const char*()
const;
299 const FbxString& Copy(
const char* pString,
size_t pLength);
304 const FbxString& Append(
const char* pString,
size_t pLength);
308 int Compare(
const char* pString)
const;
312 int CompareNoCase(
const char* pString)
const;
332 FbxString Mid(
size_t pFirst,
size_t pCount)
const;
378 int Find(
char pChar,
size_t pStartPosition=0)
const;
384 int Find(
const char* pStrSub,
size_t pStartPosition=0)
const;
389 int ReverseFind(
char pChar)
const;
395 int FindOneOf(
const char* pStrCharSet,
size_t pStartPosition=0)
const;
402 bool FindAndReplace(
const char* pFind,
const char* pReplaceBy,
size_t pStartPosition=0);
408 bool ReplaceAll(
const char* pFind,
const char* pReplaceBy);
414 bool ReplaceAll(
char pFind,
char pReplaceBy);
424 int GetTokenCount(
const char* pSpans)
const;
429 FbxString GetToken(
int pTokenIndex,
const char* pSpans)
const;
437 FbxString(
size_t pSrc1Len,
const char* pSrc1Data,
size_t pSrc2Len,
const char* pSrc2Data);
444 void FreeBuffer(
char *&pOldData);
446 bool AllocCopy(
FbxString& pDest,
size_t pCopyLen,
size_t pCopyIndex)
const;
447 bool AllocBuffer(
size_t pLen);
448 bool AllocBuffer(
size_t pLen,
char*& pOldData);
450 bool AssignCopy(
size_t pSrcLen,
const char* pSrcData);
451 bool ConcatInPlace(
size_t pSrcLen,
const char* pSrcData);
453 bool IsIn(
char pChar,
const char* pString)
const;
454 bool InternalFindAndReplace(
const char* pFind,
const char* pReplaceBy,
size_t& pStartPosition);
498 pString = pString.
Left(lPos) + pString.
Mid(lPos + 1);
FbxString operator+(const FbxString &pString1, const FbxString &pString2)
FbxString concatenation.
Functor to compare "C" strings without case sensitivity.
FBX SDK environment definition.
FbxString Mid(size_t pFirst, size_t pCount) const
Extract middle string for a given length.
void FbxUTF8ToWC(const char *pInUTF8, wchar_t *&pOutWideChar, size_t *pOutWideCharSize=((void *) 0))
Convert string from UTF8 to wide-char.
Utility class to manipulate strings.
Functor to compare FbxString.
int operator()(const char *pKeyA, const char *pKeyB) const
int ReverseFind(char pChar) const
Look for the last occurrence of character in string, like "C" strrchr().
int operator()(const FbxString &pKeyA, const FbxString &pKeyB) const
int Compare(const char *pString) const
Compare as "C" strcmp().
Functor to compare "C" strings.
int operator()(const char *pKeyA, const char *pKeyB) const
void FbxRemoveChar(FbxString &pString, char pToRemove)
Remove the given char in the given string.
FBXSDK_INCOMPATIBLE_WITH_ARRAY(FbxString)
int CompareNoCase(const char *pString) const
Compare as "C" stricmp().
void FbxWCToUTF8(const wchar_t *pInWideChar, char *&pOutUTF8, size_t *pOutUTF8Size=((void *) 0))
Convert string from wide-char to UTF8.
EPaddingType
Padding types.
FbxString Left(size_t pCount) const
Extract left string.
Functor to compare FbxString without case sensitivity.
int operator()(const FbxString &pKeyA, const FbxString &pKeyB) const