blob: aa0499c641b1b5c692230bf61fffa1b51b9a5004 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
// $Id$
//
// Cassowary Incremental Constraint Solver
// Original Smalltalk Implementation by Alan Borning
// This C++ Implementation by Greg J. Badros, <gjb@cs.washington.edu>
// http://www.cs.washington.edu/homes/gjb
// (C) 1998, 1999 Greg J. Badros and Alan Borning
// See ../LICENSE for legal details regarding this software
//
// debug.h
#ifndef CASSOWARY_DEBUG_H_
#define CASSOWARY_DEBUG_H_
#if defined(HAVE_CONFIG_H) && !defined(CONFIG_H_INCLUDED) && !defined(CONFIG_INLINE_H_INCLUDED)
#include <cassowary/config-inline.h>
#define CONFIG_INLINE_H_INCLUDED
#endif
#include <vector>
#include "Cassowary.h"
#ifdef CL_TRACE
class Tracer {
public:
Tracer(const char *const sz) : sz_(sz) { cerr << "* " << sz; }
~Tracer() { cerr << "x " << sz_ << " exited." << endl; }
private:
const char *const sz_;
};
inline void CtrTracer(const char *const sz, const void *pv)
{ cerr << "@+ " << sz << " ctrnew@ " << pv << endl; }
inline void DtrTracer(const char *const sz, const void *pv)
{ cerr << "@- " << sz << " dtrnew@ " << pv << endl; }
#else
class Tracer {
public:
Tracer(const char *const) { }
};
inline void CtrTracer(const char *const, const void *) { }
inline void DtrTracer(const char *const, const void *) { }
#endif // CL_TRACE
#endif
|