00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef COIN_SBNAME_H
00021 #define COIN_SBNAME_H
00022
00023 #include <Inventor/SbBasic.h>
00024
00025 class SbString;
00026
00027 class COIN_DLL_API SbName {
00028 public:
00029 SbName(void);
00030 SbName(const char * nameString);
00031 SbName(const SbString & str);
00032 SbName(const SbName & name);
00033 ~SbName(void);
00034
00035 const char * getString(void) const;
00036 int getLength(void) const;
00037 static SbBool isIdentStartChar(const char c);
00038 static SbBool isIdentChar(const char c);
00039 static SbBool isBaseNameStartChar(const char c);
00040 static SbBool isBaseNameChar(const char c);
00041
00042 int operator ! (void) const;
00043 friend COIN_DLL_API int operator == (const SbName & lhs, const char * rhs);
00044 friend COIN_DLL_API int operator == (const char * lhs, const SbName & rhs);
00045 friend COIN_DLL_API int operator == (const SbName & lhs, const SbName & rhs);
00046 friend COIN_DLL_API int operator != (const SbName & lhs, const char * rhs);
00047 friend COIN_DLL_API int operator != (const char * lhs, const SbName & rhs);
00048 friend COIN_DLL_API int operator != (const SbName & lhs, const SbName & rhs);
00049
00050 operator const char * (void) const;
00051
00052 private:
00053 const class SbNameEntry * entry;
00054 };
00055 COIN_DLL_API int operator == (const SbName & lhs, const char * rhs);
00056 COIN_DLL_API int operator == (const char * lhs, const SbName & rhs);
00057 COIN_DLL_API int operator == (const SbName & lhs, const SbName & rhs);
00058 COIN_DLL_API int operator != (const SbName & lhs, const char * rhs);
00059 COIN_DLL_API int operator != (const char * lhs, const SbName & rhs);
00060 COIN_DLL_API int operator != (const SbName & lhs, const SbName & rhs);
00061
00062 #endif // !COIN_SBNAME_H