1 #ifndef __JLANG__JSHAREDPOINTER__
2 #define __JLANG__JSHAREDPOINTER__
14 namespace JPP {
using namespace JLANG; }
27 template<
class JClass_t,
template<
class>
class JMemory_t =
JNew>
68 template<
class JDerived_t>
119 if (this->
get() !=
object.
get()) {
157 template<
class JDerived_t>
202 virtual void set(JClass_t* p)
override
Base class for memory management.
Template interface for pointer to object(s).
bool is_valid() const
Check validity of pointer.
Memory management class for create/release policy based on new/delete.
Template implementation of class that holds pointer to object(s).
virtual JClass_t * get() const override
Get pointer.
virtual void set(JClass_t *p) override
Set pointer.
virtual void reset() override
Reset pointer.
void initialise()
Initialise counter.
void attach(const JSharedCounter &object)
Attach this counter to given shared counter object.
The template JSharedPointer class can be used to share a pointer to an object.
JSharedPointer & operator=(JDerived_t *p)
Assignment operator.
JSharedPointer(JDerived_t *p)
Assignment constructor.
const JSharedPointer & getSharedPointer() const
Get shared pointer.
virtual void reset() override
Reset pointer.
JSharedPointer & getSharedPointer()
Get shared pointer.
JSharedPointer()
Default constructor.
JSharedPointer(const JSharedPointer &object)
Copy constructor.
virtual void set(JClass_t *p) override
Set pointer.
void set(const JSharedPointer &object)
Set pointer.
JPointer< JClass_t > pointer_type
JStorage< JClass_t, JMemory_t > storage_type
void setSharedPointer(const JSharedPointer &object)
Set shared pointer.
~JSharedPointer()
Destructor.
JSharedPointer & operator=(const JSharedPointer &object)
Assignment operator.
virtual void reset() override
Reset pointer.
Auxiliary classes and methods for language specific functionality.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).