ns3::SatChannelPair Class Reference

Container of Satellite channels pairs. More...

#include "satellite-beam-channel-pair.h"

+ Inheritance diagram for ns3::SatChannelPair:
+ Collaboration diagram for ns3::SatChannelPair:

Public Types

typedef std::pair< Ptr< SatChannel >, Ptr< SatChannel > > ChannelPair_t
 

Public Member Functions

 SatChannelPair ()
 Default constructor. More...
 
virtual ~SatChannelPair ()
 Destructor for SatChannel. More...
 
ChannelPair_t GetChannelPair (uint32_t satId, uint32_t beamId) const
 Retrieve the channel pair associated to a beam. More...
 
Ptr< SatChannelGetForwardChannel (uint32_t satId, uint32_t frequencyId) const
 
Ptr< SatChannelGetReturnChannel (uint32_t satId, uint32_t frequencyId) const
 
bool HasFwdChannel (uint32_t satId, uint32_t frequencyId) const
 Test if a channel pair has been stored for a given color. More...
 
bool HasRtnChannel (uint32_t satId, uint32_t frequencyId) const
 
void StoreChannelPair (uint32_t satId, uint32_t beamId, uint32_t fwdFrequencyId, Ptr< SatChannel > fwdChannel, uint32_t rtnFrequencyId, Ptr< SatChannel > rtnChannel)
 Store a pair of SatChannel for the given color and associate the given beam to said color. More...
 
void UpdateBeamsForFrequency (uint32_t satId, uint32_t beamdId, uint32_t fwdFrequencyId, uint32_t rtnFrequencyId)
 Associate a new beam to a given color. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 Get the type ID. More...
 

Private Attributes

std::map< std::pair< uint32_t, uint32_t >, std::pair< uint32_t, uint32_t > > m_frequencies
 
std::map< std::pair< uint32_t, uint32_t >, Ptr< SatChannel > > m_fwdChannels
 
std::map< std::pair< uint32_t, uint32_t >, Ptr< SatChannel > > m_rtnChannels
 

Detailed Description

Container of Satellite channels pairs.

As a Satellite channel is mapped into a frequency band and act as data transmitter in a single direction, a pair of Satellite channels represent a bidirectionnal link between either an UT and the Satellite or a GW and the Satellite.

The main task of the SatChannelPair is to store such bidirectionnal link information on a per-beam basis.

Definition at line 47 of file satellite-beam-channel-pair.h.

Member Typedef Documentation

◆ ChannelPair_t

Definition at line 51 of file satellite-beam-channel-pair.h.

Constructor & Destructor Documentation

◆ SatChannelPair()

ns3::SatChannelPair::SatChannelPair ( )

Default constructor.

Definition at line 43 of file satellite-beam-channel-pair.cc.

◆ ~SatChannelPair()

ns3::SatChannelPair::~SatChannelPair ( )
virtual

Destructor for SatChannel.

Definition at line 51 of file satellite-beam-channel-pair.cc.

References m_frequencies, m_fwdChannels, and m_rtnChannels.

Member Function Documentation

◆ GetChannelPair()

SatChannelPair::ChannelPair_t ns3::SatChannelPair::GetChannelPair ( uint32_t  satId,
uint32_t  beamId 
) const

Retrieve the channel pair associated to a beam.

Parameters
satIdthe ID of the satellite
beamIdthe ID of the beam
Returns
a pair of SatChannel that has been associated to this beam

Definition at line 60 of file satellite-beam-channel-pair.cc.

References GetForwardChannel(), GetReturnChannel(), and m_frequencies.

Referenced by ns3::SatBeamHelper::InstallUser().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetForwardChannel()

Ptr< SatChannel > ns3::SatChannelPair::GetForwardChannel ( uint32_t  satId,
uint32_t  frequencyId 
) const

Definition at line 78 of file satellite-beam-channel-pair.cc.

References m_fwdChannels.

Referenced by GetChannelPair().

+ Here is the caller graph for this function:

◆ GetReturnChannel()

Ptr< SatChannel > ns3::SatChannelPair::GetReturnChannel ( uint32_t  satId,
uint32_t  frequencyId 
) const

Definition at line 92 of file satellite-beam-channel-pair.cc.

References m_rtnChannels.

Referenced by GetChannelPair().

+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::SatChannelPair::GetTypeId ( void  )
static

Get the type ID.

Returns
the object TypeId

Definition at line 36 of file satellite-beam-channel-pair.cc.

◆ HasFwdChannel()

bool ns3::SatChannelPair::HasFwdChannel ( uint32_t  satId,
uint32_t  frequencyId 
) const

Test if a channel pair has been stored for a given color.

Parameters
satIdthe ID of the satellite
frequencyIdthe ID of the color
Returns
whether or not this color already stores a pair of SatChannel

Definition at line 106 of file satellite-beam-channel-pair.cc.

References m_fwdChannels.

◆ HasRtnChannel()

bool ns3::SatChannelPair::HasRtnChannel ( uint32_t  satId,
uint32_t  frequencyId 
) const

Definition at line 116 of file satellite-beam-channel-pair.cc.

References m_rtnChannels.

◆ StoreChannelPair()

void ns3::SatChannelPair::StoreChannelPair ( uint32_t  satId,
uint32_t  beamId,
uint32_t  fwdFrequencyId,
Ptr< SatChannel fwdChannel,
uint32_t  rtnFrequencyId,
Ptr< SatChannel rtnChannel 
)

Store a pair of SatChannel for the given color and associate the given beam to said color.

Parameters
satIdthe ID of the satellite
beamIdthe ID of the beam
frequencyIdthe ID of the color
channelsthe SatChannel pair to store

Definition at line 146 of file satellite-beam-channel-pair.cc.

References m_fwdChannels, m_rtnChannels, and UpdateBeamsForFrequency().

+ Here is the call graph for this function:

◆ UpdateBeamsForFrequency()

void ns3::SatChannelPair::UpdateBeamsForFrequency ( uint32_t  satId,
uint32_t  beamdId,
uint32_t  fwdFrequencyId,
uint32_t  rtnFrequencyId 
)

Associate a new beam to a given color.

Parameters
satIdthe ID of the satellite
beamIdthe ID of the beam
frequencyIdthe ID of the color

Definition at line 126 of file satellite-beam-channel-pair.cc.

References m_frequencies.

Referenced by StoreChannelPair().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_frequencies

std::map<std::pair<uint32_t, uint32_t>, std::pair<uint32_t, uint32_t> > ns3::SatChannelPair::m_frequencies
private

◆ m_fwdChannels

std::map<std::pair<uint32_t, uint32_t>, Ptr<SatChannel> > ns3::SatChannelPair::m_fwdChannels
private

◆ m_rtnChannels

std::map<std::pair<uint32_t, uint32_t>, Ptr<SatChannel> > ns3::SatChannelPair::m_rtnChannels
private

The documentation for this class was generated from the following files: