A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
make-event.cc
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2008 INRIA
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 2 as
6
* published by the Free Software Foundation;
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program; if not, write to the Free Software
15
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16
*
17
*/
18
19
#include "
make-event.h
"
20
21
#include "
log.h
"
22
29
namespace
ns3
30
{
31
32
NS_LOG_COMPONENT_DEFINE
(
"MakeEvent"
);
33
34
// This is the only non-templated version of MakeEvent.
35
EventImpl*
36
MakeEvent
(
void
(*
f
)())
37
{
38
NS_LOG_FUNCTION
(
f
);
39
40
// zero arg version
41
class
EventFunctionImpl0 :
public
EventImpl
42
{
43
public
:
44
typedef
void (*F)();
45
46
EventFunctionImpl0(F
function
)
47
: m_function(
function
)
48
{
49
}
50
51
~EventFunctionImpl0()
override
52
{
53
}
54
55
protected
:
56
void
Notify()
override
57
{
58
(*m_function)();
59
}
60
61
private
:
62
F m_function;
63
}* ev =
new
EventFunctionImpl0(
f
);
64
65
return
ev;
66
}
67
68
}
// namespace ns3
f
double f(double x, void *params)
Definition:
80211b.c:70
ns3::EventImpl
A simulation event.
Definition:
event-impl.h:46
NS_LOG_COMPONENT_DEFINE
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
Definition:
log.h:202
NS_LOG_FUNCTION
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
Definition:
log-macros-enabled.h:240
ns3::MakeEvent
EventImpl * MakeEvent(void(*f)())
Make an EventImpl from a function pointer taking varying numbers of arguments.
Definition:
make-event.cc:36
log.h
Debug message logging.
make-event.h
ns3::MakeEvent function declarations and template implementation.
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
src
core
model
make-event.cc
Generated on Sun Mar 3 2024 17:10:55 for ns-3 by
1.9.1