A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
building-container.h
Go to the documentation of this file.
1
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2
/*
3
* Copyright (c) 2008 INRIA
4
* Copyright (c) 2011 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License version 2 as
8
* published by the Free Software Foundation;
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
*
19
* Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr> (original node-container.h)
20
* Nicola Baldo (wrote building-container.h based on node-container.h)
21
*/
22
#ifndef BUILDING_CONTAINER_H
23
#define BUILDING_CONTAINER_H
24
25
#include <stdint.h>
26
#include <vector>
27
#include <ns3/building.h>
28
29
namespace
ns3
{
30
40
class
BuildingContainer
41
{
42
public
:
44
typedef
std::vector<Ptr<Building> >::const_iterator
Iterator
;
45
49
BuildingContainer
();
50
57
BuildingContainer
(
Ptr<Building>
building);
58
66
BuildingContainer
(std::string buildingName);
67
87
Iterator
Begin
(
void
)
const
;
88
108
Iterator
End
(
void
)
const
;
109
130
uint32_t
GetN
(
void
)
const
;
131
153
Ptr<Building>
Get
(uint32_t i)
const
;
154
165
void
Create
(uint32_t n);
166
173
void
Add
(
BuildingContainer
other);
174
180
void
Add
(
Ptr<Building>
building);
181
188
void
Add
(std::string buildingName);
189
201
static
BuildingContainer
GetGlobal
(
void
);
202
203
private
:
204
std::vector<Ptr<Building> >
m_buildings
;
205
};
206
207
}
// namespace ns3
208
209
#endif
/* BUILDING_CONTAINER_H */
ns3::BuildingContainer
keep track of a set of building pointers.
Definition:
building-container.h:41
ns3::BuildingContainer::m_buildings
std::vector< Ptr< Building > > m_buildings
Building container.
Definition:
building-container.h:204
ns3::BuildingContainer::Create
void Create(uint32_t n)
Create n buildings and append pointers to them to the end of this BuildingContainer.
Definition:
building-container.cc:64
ns3::BuildingContainer::BuildingContainer
BuildingContainer()
Create an empty BuildingContainer.
Definition:
building-container.cc:28
ns3::BuildingContainer::End
Iterator End(void) const
Get an iterator which indicates past-the-last Building in the container.
Definition:
building-container.cc:48
ns3::BuildingContainer::Add
void Add(BuildingContainer other)
Append the contents of another BuildingContainer to the end of this container.
Definition:
building-container.cc:72
ns3::BuildingContainer::Get
Ptr< Building > Get(uint32_t i) const
Get the Ptr<Building> stored in this container at a given index.
Definition:
building-container.cc:59
ns3::BuildingContainer::Begin
Iterator Begin(void) const
Get an iterator which refers to the first Building in the container.
Definition:
building-container.cc:43
ns3::BuildingContainer::GetGlobal
static BuildingContainer GetGlobal(void)
Create a BuildingContainer that contains a list of all buildings stored in the ns3::BuildingList.
Definition:
building-container.cc:92
ns3::BuildingContainer::GetN
uint32_t GetN(void) const
Get the number of Ptr<Building> stored in this container.
Definition:
building-container.cc:54
ns3::BuildingContainer::Iterator
std::vector< Ptr< Building > >::const_iterator Iterator
Const iterator.
Definition:
building-container.h:44
ns3::Ptr
Smart pointer class similar to boost::intrusive_ptr.
Definition:
ptr.h:74
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
src
buildings
helper
building-container.h
Generated on Tue Feb 6 2024 19:21:16 for ns-3 by
1.9.1