OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Trace< TraceEntryT > Class Template Reference

#include <trace.h>

Collaboration diagram for Trace< TraceEntryT >:

Public Types

typedef std::map< const
std::string, boost::weak_ptr
< TraceBuffer< TraceEntryT > > > 
TraceBufMap
 

Public Member Functions

void TraceOn ()
 
void TraceOff ()
 
bool IsTraceOn ()
 
boost::shared_ptr< TraceBuffer
< TraceEntryT > > 
TraceBufGet (const std::string &buf_name)
 
boost::shared_ptr< TraceBuffer
< TraceEntryT > > 
TraceBufAdd (const std::string &buf_name, size_t size, bool trace_enable)
 
void TraceBufListGet (std::vector< std::string > &trace_buf_list)
 
size_t TraceBufCapacityGet (const std::string &buf_name)
 
boost::shared_ptr< TraceBuffer
< TraceEntryT > > 
TraceBufCapacityReset (const std::string &buf_name, size_t size)
 

Static Public Member Functions

static TraceGetInstance ()
 

Private Member Functions

 Trace ()
 
 ~Trace ()
 
 DISALLOW_COPY_AND_ASSIGN (Trace)
 

Private Attributes

tbb::atomic< bool > trace_enable_
 
TraceBufMap trace_buf_map_
 
tbb::mutex mutex_
 

Static Private Attributes

static Tracetrace_ = NULL
 

Detailed Description

template<typename TraceEntryT>
class Trace< TraceEntryT >

Definition at line 220 of file trace.h.

Member Typedef Documentation

template<typename TraceEntryT >
typedef std::map<const std::string, boost::weak_ptr<TraceBuffer<TraceEntryT> > > Trace< TraceEntryT >::TraceBufMap

Definition at line 222 of file trace.h.

Constructor & Destructor Documentation

template<typename TraceEntryT >
Trace< TraceEntryT >::Trace ( )
inlineprivate

Definition at line 310 of file trace.h.

template<typename TraceEntryT >
Trace< TraceEntryT >::~Trace ( )
inlineprivate

Definition at line 314 of file trace.h.

Member Function Documentation

template<typename TraceEntryT >
Trace< TraceEntryT >::DISALLOW_COPY_AND_ASSIGN ( Trace< TraceEntryT >  )
private
template<typename TraceEntryT >
static Trace* Trace< TraceEntryT >::GetInstance ( )
inlinestatic

Definition at line 224 of file trace.h.

Here is the call graph for this function:

template<typename TraceEntryT >
bool Trace< TraceEntryT >::IsTraceOn ( )
inline

Definition at line 239 of file trace.h.

template<typename TraceEntryT >
boost::shared_ptr<TraceBuffer<TraceEntryT> > Trace< TraceEntryT >::TraceBufAdd ( const std::string &  buf_name,
size_t  size,
bool  trace_enable 
)
inline

Definition at line 253 of file trace.h.

template<typename TraceEntryT >
size_t Trace< TraceEntryT >::TraceBufCapacityGet ( const std::string &  buf_name)
inline

Definition at line 279 of file trace.h.

template<typename TraceEntryT >
boost::shared_ptr<TraceBuffer<TraceEntryT> > Trace< TraceEntryT >::TraceBufCapacityReset ( const std::string &  buf_name,
size_t  size 
)
inline

Definition at line 291 of file trace.h.

template<typename TraceEntryT >
boost::shared_ptr<TraceBuffer<TraceEntryT> > Trace< TraceEntryT >::TraceBufGet ( const std::string &  buf_name)
inline

Definition at line 243 of file trace.h.

template<typename TraceEntryT >
void Trace< TraceEntryT >::TraceBufListGet ( std::vector< std::string > &  trace_buf_list)
inline

Definition at line 271 of file trace.h.

template<typename TraceEntryT >
void Trace< TraceEntryT >::TraceOff ( )
inline

Definition at line 235 of file trace.h.

template<typename TraceEntryT >
void Trace< TraceEntryT >::TraceOn ( )
inline

Definition at line 231 of file trace.h.

Member Data Documentation

template<typename TraceEntryT >
tbb::mutex Trace< TraceEntryT >::mutex_
private

Definition at line 321 of file trace.h.

template<typename TraceEntryT >
TraceSandeshType * TraceSandeshType::trace_ = NULL
staticprivate

Definition at line 318 of file trace.h.

template<typename TraceEntryT >
TraceBufMap Trace< TraceEntryT >::trace_buf_map_
private

Definition at line 320 of file trace.h.

template<typename TraceEntryT >
tbb::atomic<bool> Trace< TraceEntryT >::trace_enable_
private

Definition at line 319 of file trace.h.


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