Simulation Manual
User Manual:
Open the PDF directly: View PDF
Page Count: 511 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- Contents
- 1 Introduction
- 2 Overview
- 3 The NED Language
- 4 Simple Modules
- 4.1 Simulation Concepts
- 4.2 Components, Simple Modules, Channels
- 4.3 Defining Simple Module Types
- 4.4 Adding Functionality to cSimpleModule
- 4.5 Accessing Module Parameters
- 4.6 Accessing Gates and Connections
- 4.7 Sending and Receiving Messages
- 4.8 Channels
- 4.9 Stopping the Simulation
- 4.10 Finite State Machines
- 4.11 Navigating the Module Hierarchy
- 4.12 Direct Method Calls Between Modules
- 4.13 Dynamic Module Creation
- 4.14 Signals
- 4.15 Signal-Based Statistics Recording
- 5 Messages and Packets
- 6 Message Definitions
- 7 The Simulation Library
- 7.1 Fundamentals
- 7.2 Logging from Modules
- 7.3 Random Number Generators
- 7.4 Generating Random Variates
- 7.5 Container Classes
- 7.6 Routing Support: cTopology
- 7.7 Pattern Matching
- 7.8 Statistics and Distribution Estimation
- 7.9 Recording Simulation Results
- 7.10 Watches and Snapshots
- 7.11 Defining New NED Functions
- 7.12 Deriving New Classes
- 7.13 Object Ownership Management
- 8 Visualization
- 8.1 Overview
- 8.2 Placement of Visualization Code
- 8.3 Display Strings
- 8.4 Bubbles
- 8.5 The Canvas
- 8.5.1 Overview
- 8.5.2 Creating, Accessing and Viewing Canvases
- 8.5.3 Figure Classes
- 8.5.4 Figure Hierarchy
- 8.5.5 Creating and Manipulating Figures from NED and C++
- 8.5.6 Transforms
- 8.5.7 Showing/Hiding Figures
- 8.5.8 Specifying Positions, Colors, Fonts and Other Properties
- 8.5.9 Primitive Figures
- 8.5.10 Compound Figures
- 8.5.11 Defining New Figure Types
- 8.6 3D Visualization
- 9 Building Simulation Programs
- 9.1 Overview
- 9.2 Using opp_makemake and Makefiles
- 9.2.1 Command-line Options
- 9.2.2 Basic Use
- 9.2.3 Debug and Release Builds
- 9.2.4 Debugging the Makefile
- 9.2.5 Using External C/C++ Libraries
- 9.2.6 Building Directory Trees
- 9.2.7 Automatic Include Dirs
- 9.2.8 Dependency Handling
- 9.2.9 Out-of-Directory Build
- 9.2.10 Building Shared and Static Libraries
- 9.2.11 Recursive Builds
- 9.2.12 Customizing the Makefile
- 9.2.13 Projects with Multiple Source Trees
- 9.2.14 A Multi-Directory Example
- 9.3 Project Features
- 10 Configuring Simulations
- 11 Running Simulations
- 12 Result Recording and Analysis
- 13 Eventlog
- 14 Documenting NED and Messages
- 15 Testing
- 16 Parallel Distributed Simulation
- 17 Customizing and Extending OMNeT++
- 17.1 Overview
- 17.2 Adding a New Configuration Option
- 17.3 Simulation Lifetime Listeners
- 17.4 cEvent
- 17.5 Defining a New Random Number Generator
- 17.6 Defining a New Event Scheduler
- 17.7 Defining a New FES Data Structure
- 17.8 Defining a New Fingerprint Algorithm
- 17.9 Defining a New Output Scalar Manager
- 17.10 Defining a New Output Vector Manager
- 17.11 Defining a New Eventlog Manager
- 17.12 Defining a New Snapshot Manager
- 17.13 Defining a New Configuration Provider
- 17.14 Implementing a New User Interface
- 18 Embedding the Simulation Kernel
- 18.1 Architecture
- 18.2 Embedding the OMNeT++ Simulation Kernel
- 18.2.1 The main() Function
- 18.2.2 The simulate() Function
- 18.2.3 Providing an Environment Object
- 18.2.4 Providing a Configuration Object
- 18.2.5 Loading NED Files
- 18.2.6 How to Eliminate NED Files
- 18.2.7 Assigning Module Parameters
- 18.2.8 Extracting Statistics from the Model
- 18.2.9 The Simulation Loop
- 18.2.10 Multiple, Coexisting Simulations
- 18.2.11 Installing a Custom Scheduler
- 18.2.12 Multi-Threaded Programs
- A NED Reference
- A.1 Syntax
- A.2 Built-in Definitions
- A.3 Packages
- A.4 Components
- A.4.1 Simple Modules
- A.4.2 Compound Modules
- A.4.3 Networks
- A.4.4 Channels
- A.4.5 Module Interfaces
- A.4.6 Channel Interfaces
- A.4.7 Resolving the C++ Implementation Class
- A.4.8 Properties
- A.4.9 Parameters
- A.4.10 Pattern Assignments
- A.4.11 Gates
- A.4.12 Submodules
- A.4.13 Connections
- A.4.14 Conditional and Loop Connections, Connection Groups
- A.4.15 Inner Types
- A.4.16 Name Uniqueness
- A.4.17 Parameter Assignment Order
- A.4.18 Type Name Resolution
- A.4.19 Resolution of Parametric Types
- A.4.20 Implementing an Interface
- A.4.21 Inheritance
- A.4.22 Network Build Order
- A.5 Expressions
- B NED Language Grammar
- C NED XML Binding
- D NED Functions
- E Message Definitions Grammar
- F Display String Tags
- G Figure Definitions
- H Configuration Options
- I Result File Formats
- J Eventlog File Format
- References
- Index