LEFT | RIGHT |
(no file at all) | |
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ | 1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ |
2 /* | 2 /* |
3 * Copyright (c) 2008 INRIA | 3 * Copyright (c) 2008 INRIA |
4 * | 4 * |
5 * This program is free software; you can redistribute it and/or modify | 5 * This program is free software; you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 2 as | 6 * it under the terms of the GNU General Public License version 2 as |
7 * published by the Free Software Foundation; | 7 * published by the Free Software Foundation; |
8 * | 8 * |
9 * This program is distributed in the hope that it will be useful, | 9 * This program is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
12 * GNU General Public License for more details. | 12 * GNU General Public License for more details. |
13 * | 13 * |
14 * You should have received a copy of the GNU General Public License | 14 * You should have received a copy of the GNU General Public License |
15 * along with this program; if not, write to the Free Software | 15 * along with this program; if not, write to the Free Software |
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
17 * | 17 * |
18 * Authors: Mathieu Lacage <mathieu.lacage@sophia.inria.fr> | 18 * Authors: Mathieu Lacage <mathieu.lacage@sophia.inria.fr> |
19 */ | 19 */ |
20 #ifndef TRACE_SOURCE_ACCESSOR_H | 20 #ifndef TRACE_SOURCE_ACCESSOR_H |
21 #define TRACE_SOURCE_ACCESSOR_H | 21 #define TRACE_SOURCE_ACCESSOR_H |
22 | 22 |
23 #include <stdint.h> | 23 #include <stdint.h> |
24 #include "callback.h" | 24 #include "callback.h" |
25 #include "ptr.h" | 25 #include "ptr.h" |
26 #include "simple-ref-count.h" | 26 #include "simple-ref-count.h" |
27 | 27 |
| 28 #include "ns3/ns3-module.h" |
| 29 #define NS3_MODULE NS3_CORE_MODULE |
| 30 #include "ns3/ns3-export.h" |
| 31 |
28 /** | 32 /** |
29 * \file | 33 * \file |
30 * \ingroup tracing | 34 * \ingroup tracing |
31 * ns3::TraceSourceAccessor and ns3::MakeTraceSourceAccessor declarations. | 35 * ns3::TraceSourceAccessor and ns3::MakeTraceSourceAccessor declarations. |
32 */ | 36 */ |
33 | 37 |
34 namespace ns3 { | 38 namespace ns3 { |
35 | 39 |
36 class ObjectBase; | 40 class ObjectBase; |
37 | 41 |
38 /** | 42 /** |
39 * \ingroup tracing | 43 * \ingroup tracing |
40 * | 44 * |
41 * \brief Control access to objects' trace sources. | 45 * \brief Control access to objects' trace sources. |
42 * | 46 * |
43 * This class abstracts the kind of trace source to which we want to connect | 47 * This class abstracts the kind of trace source to which we want to connect |
44 * and provides services to Connect and Disconnect a sink to a trace source. | 48 * and provides services to Connect and Disconnect a sink to a trace source. |
45 */ | 49 */ |
46 class TraceSourceAccessor : public SimpleRefCount<TraceSourceAccessor> | 50 class NS3_EXPORT TraceSourceAccessor : public SimpleRefCount<TraceSourceAccessor
> |
47 { | 51 { |
48 public: | 52 public: |
49 /** Constructor. */ | 53 /** Constructor. */ |
50 TraceSourceAccessor (); | 54 TraceSourceAccessor (); |
51 /** Destructor. */ | 55 /** Destructor. */ |
52 virtual ~TraceSourceAccessor (); | 56 virtual ~TraceSourceAccessor (); |
53 | 57 |
54 /** | 58 /** |
55 * Connect a Callback to a TraceSource (without context.) | 59 * Connect a Callback to a TraceSource (without context.) |
56 * | 60 * |
(...skipping 140 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
197 template <typename T> | 201 template <typename T> |
198 Ptr<const TraceSourceAccessor> MakeTraceSourceAccessor (T a) | 202 Ptr<const TraceSourceAccessor> MakeTraceSourceAccessor (T a) |
199 { | 203 { |
200 return DoMakeTraceSourceAccessor (a); | 204 return DoMakeTraceSourceAccessor (a); |
201 } | 205 } |
202 | 206 |
203 } // namespace ns3 | 207 } // namespace ns3 |
204 | 208 |
205 | 209 |
206 #endif /* TRACE_SOURCE_ACCESSOR_H */ | 210 #endif /* TRACE_SOURCE_ACCESSOR_H */ |
LEFT | RIGHT |