1 #ifndef COIN_SBSTRING_H 2 #define COIN_SBSTRING_H 29 #include <Inventor/system/inttypes.h> 30 #include <Inventor/C/base/string.h> 33 #define COIN_ALLOW_SBINTLIST 34 #include <Inventor/lists/SbIntList.h> 35 #undef COIN_ALLOW_SBINTLIST 37 #include <Inventor/lists/SbIntList.h> 38 #endif // COIN_INTERNAL 44 SbString(
void) { cc_string_construct(&this->str); }
47 { cc_string_construct(&this->str); cc_string_set_text(&this->str, s); }
50 { cc_string_construct(&this->str); cc_string_set_subtext(&this->str, s, start, end); }
53 { cc_string_construct(&this->str); cc_string_set_string(&this->str, &s.str); }
56 { cc_string_construct(&this->str); cc_string_set_integer(&this->str, digits); }
60 uint32_t
hash(
void)
const {
return cc_string_hash(&this->str); }
61 static uint32_t
hash(
const char * s) {
return cc_string_hash_text(s); }
63 int getLength(
void)
const {
return cc_string_length(&this->str); }
67 if ( freeold ) cc_string_clear(&this->str);
68 else cc_string_clear_no_free(&this->str);
71 const char *
getString(
void)
const {
return cc_string_get_text(&this->str); }
76 cc_string_set_subtext(&s.str, cc_string_get_text(&this->str), startidx, endidx);
81 cc_string_remove_substring(&this->str, startidx, endidx);
84 void addIntString(
const int value) { cc_string_append_integer(&this->str, value); }
86 char operator[](
int index)
const {
return this->str.pointer[index]; }
89 { cc_string_set_text(&this->str, s);
return *
this; }
91 { cc_string_set_text(&this->str, s.str.pointer);
return *
this; }
94 { cc_string_append_text(&this->str, s);
return *
this; }
96 { cc_string_append_string(&this->str, &s.str);
return *
this; }
98 { cc_string_append_char(&this->str, c);
return *
this; }
100 int operator!(
void)
const {
return ! cc_string_is(&this->str); }
103 {
return cc_string_compare_subtext(&this->str, text, offset); }
107 va_list args; va_start(args, formatstr);
108 cc_string_vsprintf(&this->str, formatstr, args);
109 va_end(args);
return *
this;
112 { cc_string_vsprintf(&this->str, formatstr, args);
return *
this; }
114 void apply(
char (*func)(
char input)) { cc_string_apply(&this->str, (cc_apply_f)func); }
119 friend int operator==(
const SbString & sbstr,
const char * s);
120 friend int operator==(
const char * s,
const SbString & sbstr);
122 friend int operator!=(
const SbString & sbstr,
const char * s);
123 friend int operator!=(
const char * s,
const SbString & sbstr);
127 struct cc_string str;
131 {
return (cc_string_compare_text(sbstr.str.pointer, s) == 0); }
133 {
return (cc_string_compare_text(s, sbstr.str.pointer) == 0); }
135 {
return (cc_string_compare_text(str1.str.pointer, str2.str.pointer) == 0); }
138 {
return (cc_string_compare_text(sbstr.str.pointer, s) != 0); }
140 {
return (cc_string_compare_text(s, sbstr.str.pointer) != 0); }
142 {
return (cc_string_compare_text(str1.str.pointer, str2.str.pointer) != 0); }
144 #ifndef COIN_INTERNAL 146 #include <Inventor/SbName.h> 147 #endif // !COIN_INTERNAL 149 #endif // !COIN_SBSTRING_H SbString(const SbString &s)
Definition: SbString.h:52
uint32_t hash(void) const
Definition: SbString.h:60
SbString & sprintf(const char *formatstr,...)
Definition: SbString.h:105
SbString(const char *s)
Definition: SbString.h:46
SbString & operator+=(const char *s)
Definition: SbString.h:93
SbString(const int digits)
Definition: SbString.h:55
const char * getString(void) const
Definition: SbString.h:71
int getLength(void) const
Definition: SbString.h:63
int operator!(void) const
Definition: SbString.h:100
SbString & operator+=(const SbString &s)
Definition: SbString.h:95
SbString(void)
Definition: SbString.h:44
SbString & operator=(const char *s)
Definition: SbString.h:88
~SbString()
Definition: SbString.h:58
SbString & vsprintf(const char *formatstr, va_list args)
Definition: SbString.h:111
void deleteSubString(int startidx, int endidx=-1)
Definition: SbString.h:79
SbString & operator+=(const char c)
Definition: SbString.h:97
int operator!=(const SbBox2i32 &b1, const SbBox2i32 &b2)
Definition: SbBox2i32.h:91
SbString(const char *s, int start, int end)
Definition: SbString.h:49
void addIntString(const int value)
Definition: SbString.h:84
static uint32_t hash(const char *s)
Definition: SbString.h:61
SbString getSubString(int startidx, int endidx=-1) const
Definition: SbString.h:73
int compareSubString(const char *text, int offset=0) const
Definition: SbString.h:102
void makeEmpty(SbBool freeold=1)
Definition: SbString.h:65
The SbString class is a string class with convenience functions for string operations.This is the class used for storing and working with character strings. It automatically takes care of supporting all the "bookkeeping" tasks usually associated with working with character strings, like memory allocation and deallocation etc.
Definition: SbString.h:42
The SbIntList class is a container for integer list arrays.
Definition: SbIntList.h:31
SbString & operator=(const SbString &s)
Definition: SbString.h:90
int operator==(const SbBox2i32 &b1, const SbBox2i32 &b2)
Definition: SbBox2i32.h:87
char operator[](int index) const
Definition: SbString.h:86