diff --git a/pvDataApp/misc/bitSet.h b/pvDataApp/misc/bitSet.h index 3dbc3a1..25253d8 100644 --- a/pvDataApp/misc/bitSet.h +++ b/pvDataApp/misc/bitSet.h @@ -38,9 +38,7 @@ namespace epics { namespace pvData { */ class BitSet : public Serializable { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(BitSet); /** * Creates a new bit set. All bits are initially {@code false}. */ diff --git a/pvDataApp/misc/destroyable.h b/pvDataApp/misc/destroyable.h index 6858770..a789319 100644 --- a/pvDataApp/misc/destroyable.h +++ b/pvDataApp/misc/destroyable.h @@ -18,8 +18,7 @@ namespace epics { namespace pvData { */ class Destroyable { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; + POINTER_DEFINITIONS(Destroyable); /** * Destroy this instance. */ diff --git a/pvDataApp/misc/requester.h b/pvDataApp/misc/requester.h index 9668866..d36a432 100644 --- a/pvDataApp/misc/requester.h +++ b/pvDataApp/misc/requester.h @@ -22,8 +22,7 @@ extern StringArray messageTypeName; class Requester { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; + POINTER_DEFINITIONS(Requester); virtual ~Requester(){} virtual String getRequesterName() = 0; diff --git a/pvDataApp/misc/sharedPtr.h b/pvDataApp/misc/sharedPtr.h index a4702b6..9799f30 100644 --- a/pvDataApp/misc/sharedPtr.h +++ b/pvDataApp/misc/sharedPtr.h @@ -58,4 +58,10 @@ # undef SHARED_FROM_BOOST #endif +#define POINTER_DEFINITIONS(clazz) \ + typedef std::tr1::shared_ptr shared_pointer; \ + typedef std::tr1::shared_ptr const_shared_pointer; \ + typedef std::tr1::weak_ptr weak_pointer; \ + typedef std::tr1::weak_ptr const_weak_pointer; + #endif // SHAREDPTR_H diff --git a/pvDataApp/misc/timer.h b/pvDataApp/misc/timer.h index f4bda13..adce64e 100644 --- a/pvDataApp/misc/timer.h +++ b/pvDataApp/misc/timer.h @@ -43,8 +43,7 @@ private: class Timer : private NoDefaultMethods { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; + POINTER_DEFINITIONS(Timer); Timer(String threadName, ThreadPriority priority); ~Timer(); diff --git a/pvDataApp/monitor/monitor.h b/pvDataApp/monitor/monitor.h index 711b4f0..609626b 100644 --- a/pvDataApp/monitor/monitor.h +++ b/pvDataApp/monitor/monitor.h @@ -21,9 +21,7 @@ namespace epics { namespace pvData { */ class MonitorElement { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(MonitorElement); /** * Get the PVStructure. * @return The PVStructure. @@ -48,9 +46,7 @@ namespace epics { namespace pvData { */ class Monitor : public Destroyable, private NoDefaultMethods { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(Monitor); /** * Start monitoring. * @return completion status. @@ -81,9 +77,7 @@ namespace epics { namespace pvData { */ class MonitorRequester : public virtual Requester { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(MonitorRequester); /** * The client and server have both completed the createMonitor request. * @param status Completion status. diff --git a/pvDataApp/pv/pvData.h b/pvDataApp/pv/pvData.h index 5d63128..82a801d 100644 --- a/pvDataApp/pv/pvData.h +++ b/pvDataApp/pv/pvData.h @@ -61,9 +61,7 @@ class PVField private NoDefaultMethods { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVField); virtual ~PVField(); virtual void message(String message,MessageType messageType) ; virtual void setRequester(Requester *prequester); @@ -95,9 +93,7 @@ private: class PVScalar : public PVField { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVScalar); virtual ~PVScalar(); ScalarConstPtr getScalar() ; protected: @@ -107,9 +103,7 @@ protected: template class PVScalarValue : public PVScalar { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVScalarValue); typedef T value_type; typedef T* pointer; typedef const T* const_pointer; @@ -143,9 +137,7 @@ protected: class PVArray : public PVField, public SerializableArray { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVArray); virtual ~PVArray(); int getLength() const; void setLength(int length); @@ -164,9 +156,7 @@ private: template class PVArrayData { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVArrayData); typedef T value_type; typedef T* pointer; typedef const T* const_pointer; @@ -178,9 +168,7 @@ public: class PVScalarArray : public PVArray { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVScalarArray); virtual ~PVScalarArray(); ScalarArrayConstPtr getScalarArray() ; @@ -193,9 +181,7 @@ typedef PVArrayData StructureArrayData; class PVStructureArray : public PVArray { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVStructureArray); virtual ~PVStructureArray() {} virtual StructureArrayConstPtr getStructureArray() = 0; virtual int append(int number) = 0; @@ -216,9 +202,7 @@ private: class PVStructure : public PVField,public BitSetSerializable { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVStructure); virtual ~PVStructure(); StructureConstPtr getStructure(); PVFieldPtrArray getPVFields(); @@ -263,9 +247,7 @@ private: template class PVValueArray : public PVScalarArray { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(PVValueArray); typedef T value_type; typedef T* pointer; typedef const T* const_pointer; diff --git a/pvDataApp/pv/pvIntrospect.h b/pvDataApp/pv/pvIntrospect.h index 034ff61..a6873b9 100644 --- a/pvDataApp/pv/pvIntrospect.h +++ b/pvDataApp/pv/pvIntrospect.h @@ -61,9 +61,7 @@ namespace ScalarTypeFunc { class Field : public std::tr1::enable_shared_from_this { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; - + POINTER_DEFINITIONS(Field); String getFieldName() const{return m_fieldName;} Type getType() const{return m_type;} virtual void toString(StringBuilder buf) const{toString(buf,0);} @@ -89,8 +87,7 @@ private: class Scalar : public Field{ public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; + POINTER_DEFINITIONS(Scalar); typedef Scalar& reference; typedef const Scalar& const_reference; @@ -107,8 +104,7 @@ private: class ScalarArray : public Field{ public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; + POINTER_DEFINITIONS(ScalarArray); typedef ScalarArray& reference; typedef const ScalarArray& const_reference; @@ -125,8 +121,7 @@ private: class StructureArray : public Field{ public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; + POINTER_DEFINITIONS(StructureArray); typedef StructureArray& reference; typedef const StructureArray& const_reference; @@ -144,8 +139,7 @@ private: class Structure : public Field { public: - typedef std::tr1::shared_ptr shared_pointer; - typedef std::tr1::shared_ptr const_shared_pointer; + POINTER_DEFINITIONS(Structure); typedef Structure& reference; typedef const Structure& const_reference;