00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _CmpiString_h_
00024 #define _CmpiString_h_
00025
00026 #include "cmpidt.h"
00027 #include "cmpift.h"
00028 #include <string.h>
00029
00030 #ifndef CMPI_PLATFORM_WIN32_IX86_MSVC
00031 #include <strings.h>
00032 #endif
00033
00034 #ifndef CmpiBoolean
00035 #define CmpiBoolean CMPIBoolean
00036 #define CmpiRc CMPIrc
00037 #endif
00038
00039 #include "Linkage.h"
00040 #include "CmpiStatus.h"
00041
00042 #ifdef CMPI_PLATFORM_WIN32_IX86_MSVC
00043 #define strcasecmp _stricmp
00044 #endif
00045
00049 class CMPI_PROVIDER_LINKAGE CmpiString {
00050 friend class CmpiBroker;
00051 friend class CmpiData;
00052 friend class CmpiObjectPath;
00053 friend class CmpiInstance;
00054 friend class CmpiObject;
00055 friend class CmpiArgs;
00056 friend class CmpiArrayIdx;
00057 private:
00058 protected:
00059 void *enc;
00062 CmpiString(CMPIString* c);
00063
00066 CMPIString *getEnc() const;
00067
00068 public:
00069
00072 CmpiString();
00073
00076 CmpiString(const char *s);
00077
00080 CmpiString(const CmpiString& s);
00081
00084 const char* charPtr() const;
00085
00088 CmpiBoolean equals(const char *str) const;
00089 CmpiBoolean equals(const CmpiString& str) const;
00090
00093 CmpiBoolean equalsIgnoreCase(const char *str) const;
00094 CmpiBoolean equalsIgnoreCase(const CmpiString& str) const;
00095 };
00096
00097 #endif
00098
00099