-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathmain.cpp
More file actions
executable file
·52 lines (45 loc) · 1.86 KB
/
main.cpp
File metadata and controls
executable file
·52 lines (45 loc) · 1.86 KB
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
49
50
51
52
//
// main.cpp
// AggregationNS3
//
// Created by Alper Sinan Akyurek on 8/8/16.
// Copyright © 2016 Alper Sinan Akyurek. All rights reserved.
//
#include "Simulation.hpp"
/** \mainpage Optimal Aggregation ns3 Simulation Code
This code defines multiple transmission manager implementations, including our
optimal versions. The user doesn't have to change the code, unless a new
implementation is required. Please use the configuration files to implement
scenarios.
\section Code Structure
The code structure consists of TransmissionManager classes that control the
aggregation times of each node. Each manager has multiple Application class
instances defining data streams. Every Application has a DeadlineProcess for
deadline assignments, a GenerationProcess for data generation and a
GainFunction for optimization purposes. Also, each TransmissionManager has a
Packet level GainFunction that is applied to all Application instances.
The user can implement more GainFunction algorithms, DeadlineProcess and
GenerationProcess codes. The GainConfigureHelper, GenerationConfigureHelper and
DeadlineConfigureHelper must be updated accordingly.
\section Contact
For any bugs, suggestions or copy/modification/usage requests, email me at
aakyurek@ucsd.edu. This code has been implemented by Alper Sinan Akyurek in
part as an NSF project. Please provide proper citation if you will be using any
part of the code.
**/
/**
Creates a new Simulation instance and runs it.
\param argc Number of arguments.
\param argv All arguments.
**/
int
main( int argc, char * argv[] )
{
srand( ( unsigned int )time( NULL ) );
std::cout << "================////////////////=================" << std::endl;
Simulation* mainSimulation = new Simulation();
mainSimulation->Configure( argc, argv );
mainSimulation->Run();
delete mainSimulation;
return ( 0 );
}