1 // Copyright (c) 1994 James Clark 2 // See the file COPYING for copying permission. 3 #pragma ident "%Z%%M% %I% %E% SMI" 4 5 #ifndef Named_INCLUDED 6 #define Named_INCLUDED 1 7 8 #include "StringC.h" 9 10 #ifdef SP_NAMESPACE 11 namespace SP_NAMESPACE { 12 #endif 13 14 class SP_API Named { 15 public: Named(const StringC & name)16 Named(const StringC &name) : name_(name) { } ~Named()17 virtual ~Named() { } name()18 const StringC &name() const { return name_; } namePointer()19 const StringC *namePointer() const { return &name_; } setName(const StringC & name)20 void setName(const StringC &name) { name_ = name; } swap(Named & to)21 void swap(Named &to) { name_.swap(to.name_); } 22 private: 23 StringC name_; 24 }; 25 26 #ifdef SP_NAMESPACE 27 } 28 #endif 29 30 #endif /* not Named_INCLUDED */ 31