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 CopyOwner_INCLUDED 6 #define CopyOwner_INCLUDED 1 7 8 #include "Owner.h" 9 10 #ifdef SP_NAMESPACE 11 namespace SP_NAMESPACE { 12 #endif 13 14 template<class T> 15 class CopyOwner : public Owner<T> { 16 public: CopyOwner()17 CopyOwner() { } CopyOwner(T * p)18 CopyOwner(T *p) : Owner<T>(p) { } 19 CopyOwner(const CopyOwner<T> &); 20 void operator=(const CopyOwner<T> &o); 21 void operator=(T *p) { Owner<T>::operator=(p); } 22 }; 23 24 #ifdef SP_NAMESPACE 25 } 26 #endif 27 28 #endif /* not CopyOwner_INCLUDED */ 29 30 #ifdef SP_DEFINE_TEMPLATES 31 #include "CopyOwner.cxx" 32 #endif 33