00001 00002 // SFString.h // 00004 00005 #ifndef SFSTRING_H 00006 #define SFSTRING_H 00007 00008 #include <string> 00009 00010 namespace X3DTK { 00011 00014 00015 class SFString : public std::string 00016 { 00017 public: 00019 SFString(); 00021 SFString(const char *s); 00023 SFString(const unsigned char *s); 00025 SFString(const std::string &s); 00027 SFString(const SFString &s); 00028 00030 operator const char *() const; 00032 int toInt() const; 00034 unsigned int toUint() const; 00036 float toFloat() const; 00038 double toDouble() const; 00040 SFString lower() const; 00042 SFString upper() const; 00044 SFString getName() const; 00046 SFString getExtension() const; 00048 SFString getFile() const; 00050 SFString getPath() const; 00051 00053 static SFString number(float f); 00055 static SFString number(double d); 00057 static SFString number(int i); 00059 static SFString number(unsigned int ui); 00060 }; 00061 00062 } 00063 00064 #endif