mirror of
https://github.com/boostorg/utility.git
synced 2025-08-02 14:24:30 +02:00
*** empty log message ***
[SVN r2655]
This commit is contained in:
@@ -1,15 +1,21 @@
|
||||
//Simple class which keeps track of members
|
||||
#ifndef UTILITY_OBJECT_TRACKED_HPP_LJE20040112
|
||||
#define UTILITY_OBJECT_TRACKED_HPP_LJE20040112
|
||||
//#define UTILITY_OBJECT_TRACKED_SET_OF_OBJECTS_TRACE_MODE
|
||||
//#define UTILITY_OBJECT_TRACKED_TRACE_MODE
|
||||
#include <set>
|
||||
#include "boost/utility/obj_id.hpp"
|
||||
#if defined(UTILITY_OBJECT_TRACKED_SET_OF_OBJECTS_TRACE_MODE)\
|
||||
|| defined(UTILITY_OBJECT_TRACKED_TRACE_MODE)
|
||||
#include "boost/io/filters/mout.hpp"
|
||||
#endif
|
||||
namespace utility
|
||||
{
|
||||
class object_tracked
|
||||
: public obj_id
|
||||
{
|
||||
public:
|
||||
private:
|
||||
|
||||
struct
|
||||
set_of_objects_tracked
|
||||
: public std::set<object_tracked const*>
|
||||
@@ -18,8 +24,18 @@ class object_tracked
|
||||
std::set<object_tracked const*>
|
||||
super_type
|
||||
;
|
||||
~set_of_objects_tracked(void)
|
||||
{
|
||||
#ifdef UTILITY_OBJECT_TRACKED_SET_OF_OBJECTS_TRACE_MODE
|
||||
mout()<<"set_of_objects_tracked-\n";
|
||||
#endif
|
||||
}
|
||||
set_of_objects_tracked(void)
|
||||
{}
|
||||
{
|
||||
#ifdef UTILITY_OBJECT_TRACKED_SET_OF_OBJECTS_TRACE_MODE
|
||||
mout()<<"set_of_objects_tracked+\n";
|
||||
#endif
|
||||
}
|
||||
void
|
||||
reset(void)
|
||||
{
|
||||
@@ -37,23 +53,36 @@ class object_tracked
|
||||
set_of_objects_tracked
|
||||
our_members
|
||||
;
|
||||
public:
|
||||
static
|
||||
void
|
||||
reset(void)
|
||||
{
|
||||
our_members.reset();
|
||||
}
|
||||
static
|
||||
unsigned
|
||||
members_size(void)
|
||||
{
|
||||
return our_members.size();
|
||||
return our_members.size();
|
||||
}
|
||||
|
||||
object_tracked(void)
|
||||
{
|
||||
our_members.insert(this);
|
||||
#ifdef UTILITY_OBJECT_TRACKED_TRACE_MODE
|
||||
mout()<<"object_tracked+:id="<<id_get()<<"\n";
|
||||
mout()<<"object_tracked+:id="<<id_get()<<":default\n";
|
||||
#endif
|
||||
}
|
||||
#if 0
|
||||
object_tracked(object_tracked const& a_obj)
|
||||
{
|
||||
our_members.insert(this);
|
||||
#ifdef UTILITY_OBJECT_TRACKED_TRACE_MODE
|
||||
mout()<<"object_tracked+:id="<<id_get()<<":copy\n";
|
||||
#endif
|
||||
}
|
||||
|
||||
virtual
|
||||
#endif
|
||||
~object_tracked(void)
|
||||
{
|
||||
#ifdef UTILITY_OBJECT_TRACKED_TRACE_MODE
|
||||
|
@@ -1,5 +1,5 @@
|
||||
#ifndef TRACE_SCOPE_HPP
|
||||
#define TRACE_SCOPE_HPP
|
||||
#ifndef UTILITY_TRACE_SCOPE_HPP
|
||||
#define UTILITY_TRACE_SCOPE_HPP
|
||||
#include "boost/io/filters/mout.hpp"
|
||||
#include <string>
|
||||
namespace utility
|
||||
@@ -20,17 +20,17 @@ trace_scope
|
||||
;}
|
||||
~trace_scope(void)
|
||||
{
|
||||
; --mout()
|
||||
; --mout()
|
||||
; std::string l_context("===>Exit:")
|
||||
; mout()<<l_context<<m_scopeName<<std::endl
|
||||
; mout()<<l_context<<m_scopeName<<std::endl
|
||||
;}
|
||||
private:
|
||||
void
|
||||
init(void)
|
||||
{
|
||||
; std::string l_context("===>Enter:")
|
||||
; mout()<<l_context<<m_scopeName<<std::endl
|
||||
; ++mout()
|
||||
; mout()<<l_context<<m_scopeName<<std::endl
|
||||
; ++mout()
|
||||
;}
|
||||
std::string
|
||||
m_scopeName
|
||||
|
Reference in New Issue
Block a user