Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
CLHEP::sp::ctrl_block_p< P > Class Template Reference

#include <memory.h>

+ Inheritance diagram for CLHEP::sp::ctrl_block_p< P >:

Public Member Functions

 ctrl_block_p (P *)
 
 ~ctrl_block_p () throw ()
 
void * operator new (std::size_t)
 
void operator delete (void *)
 
virtual void * get_deleter (std::type_info const &)
 
virtual void dispose () throw ()
 
- Public Member Functions inherited from CLHEP::sp::abstract_ctrl_block
void class_invariant () const throw ()
 
 abstract_ctrl_block ()
 
virtual ~abstract_ctrl_block () throw ()
 
void add_ref ()
 
bool add_ref_lock ()
 
void weak_add_ref () throw ()
 
virtual void * get_deleter (std::type_info const &ti)=0
 
void release () throw ()
 
void weak_release () throw ()
 
virtual void dispose ()=0 throw ()
 
virtual void destroy () throw ()
 
long use_count () const throw ()
 

Additional Inherited Members

- Protected Member Functions inherited from CLHEP::noncopyable
 noncopyable () throw ()
 
 ~noncopyable () throw ()
 

Detailed Description

template<typename P>
class CLHEP::sp::ctrl_block_p< P >

Definition at line 206 of file memory.h.

Constructor & Destructor Documentation

◆ ctrl_block_p()

template<typename P >
CLHEP::sp::ctrl_block_p< P >::ctrl_block_p ( P *  p)
inlineexplicit

Definition at line 230 of file memory.h.

232 , owned_ptr( p )
233{ }

◆ ~ctrl_block_p()

template<typename P >
CLHEP::sp::ctrl_block_p< P >::~ctrl_block_p
throw (
)
inline

Definition at line 236 of file memory.h.

237{ }

Member Function Documentation

◆ dispose()

template<typename P >
void CLHEP::sp::ctrl_block_p< P >::dispose
throw (
)
inlinevirtual

Implements CLHEP::sp::abstract_ctrl_block.

Definition at line 241 of file memory.h.

242{
243 delete owned_ptr;
244}

◆ get_deleter()

template<typename P >
void * CLHEP::sp::ctrl_block_p< P >::get_deleter ( std::type_info const )
inlinevirtual

Implements CLHEP::sp::abstract_ctrl_block.

Definition at line 248 of file memory.h.

249{
250 return 0;
251}

◆ operator delete()

template<typename P >
void CLHEP::sp::ctrl_block_p< P >::operator delete ( void *  p)
inline

Definition at line 262 of file memory.h.

263{
264 std::allocator<this_type>().deallocate( static_cast<this_type*>(p), 1 );
265}

◆ operator new()

template<typename P >
void * CLHEP::sp::ctrl_block_p< P >::operator new ( std::size_t  )
inline

Definition at line 255 of file memory.h.

256{
257 return std::allocator<this_type>().allocate( 1 );
258}

The documentation for this class was generated from the following file: