libzmq master
The Intelligent Transport Layer
Public Member Functions | Private Member Functions | Private Attributes

zmq::atomic_ptr_t< T > Class Template Reference

#include <atomic_ptr.hpp>

Inheritance diagram for zmq::atomic_ptr_t< T >:
Collaboration diagram for zmq::atomic_ptr_t< T >:

List of all members.

Public Member Functions

 atomic_ptr_t ()
 ~atomic_ptr_t ()
T * cas (T *cmp_, T *val_)
void set (T *ptr_)
T * xchg (T *val_)

Private Member Functions

 atomic_ptr_t (const atomic_ptr_t &)
const atomic_ptr_toperator= (const atomic_ptr_t &)

Private Attributes

volatile T * ptr
mutex_t sync

Detailed Description

template<typename T>
class zmq::atomic_ptr_t< T >

Definition at line 52 of file atomic_ptr.hpp.


Constructor & Destructor Documentation

template<typename T>
zmq::atomic_ptr_t< T >::atomic_ptr_t ( ) [inline]

Definition at line 57 of file atomic_ptr.hpp.

template<typename T>
zmq::atomic_ptr_t< T >::~atomic_ptr_t ( ) [inline]

Definition at line 63 of file atomic_ptr.hpp.

template<typename T>
zmq::atomic_ptr_t< T >::atomic_ptr_t ( const atomic_ptr_t< T > &  ) [private]

Member Function Documentation

template<typename T>
T* zmq::atomic_ptr_t< T >::cas ( T *  cmp_,
T *  val_ 
) [inline]

Definition at line 105 of file atomic_ptr.hpp.

template<typename T>
const atomic_ptr_t& zmq::atomic_ptr_t< T >::operator= ( const atomic_ptr_t< T > &  ) [private]
template<typename T>
void zmq::atomic_ptr_t< T >::set ( T *  ptr_) [inline]

Definition at line 70 of file atomic_ptr.hpp.

template<typename T>
T* zmq::atomic_ptr_t< T >::xchg ( T *  val_) [inline]

Definition at line 77 of file atomic_ptr.hpp.

Referenced by zmq::yqueue_t< command_t, N >::pop(), zmq::yqueue_t< command_t, N >::push(), and zmq::yqueue_t< command_t, N >::~yqueue_t().

Here is the caller graph for this function:


Member Data Documentation

template<typename T>
volatile T* zmq::atomic_ptr_t< T >::ptr [private]
template<typename T>
mutex_t zmq::atomic_ptr_t< T >::sync [private]

The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines