WSF
WsfSensorBeam Class Reference

#include <WsfSensorBeam.hpp>

Inheritance diagram for WsfSensorBeam:

Public Member Functions

 WsfSensorBeam ()
 WsfSensorBeam (const WsfSensorBeam &aSrc)=default
WsfSensorBeamoperator= (const WsfSensorBeam &aRhs)
virtual ~WsfSensorBeam ()=default

Friends

class WsfSensor
class WsfSensorMode
class WsfSensorModeList

Casting elimination accessors/mutators.

Derived classes should implement these methods to properly set/get data.

virtual int GetNumberOfPulsesIntegrated () const
virtual double GetIntegrationGain () const
virtual void SetIntegrationGain (double aIntegrationGain)
virtual WsfEM_ClutterGetClutter () const

Transmitter/receiver access.

Derived classes should implement these methods to return the pointer to the underlying transmitter and receiver.

Note
The returned values may be if the beam doesn't have the respective object.
virtual WsfEM_RcvrGetEM_Rcvr ()
virtual WsfEM_XmtrGetEM_Xmtr ()
virtual bool ProcessInput (UtInput &aInput)
virtual bool Initialize (double aSimTime)
void SetBeamOwner (WsfSensorMode *aSensorModePtr)
 Set the beam owner (the parent mode).
void SetBeamIndex (size_t aBeamIndex)
WsfSensorModeGetSensorMode () const
size_t GetBeamIndex () const
WsfSensorSignalProcessor::ListGetSignalProcessors ()

Detailed Description

An optional base class for sensor beams.

Use of this class is totally optional. If your sensor implementation implements multiple beams AND it desired to being accessible to some optional derived versions of WsfSensorComponent, then you MUST implement this interface (as well as the GetBeamCount and GetBeamEntry methods) defined in WsfSensorMode. This allows components to have access to the transmitter and receiver defined in the beam.

If you use this class then you MUST adhere to the following rules:

  • When creating the first beam in a mode (typically in the constructor), you must set the beam owner This typically looks something like:
    mBeamList.push_back(new MyBeam()); // Add the beam to the beam list
    mBeamList.back()->SetBeamOwner(this); // Set its owning mode
  • When adding beams to the beam list, you must set the beam index (index into the list).
    unsigned int beamIndex = static_cast<unsigned int>(mBeamList.size());
    mBeamList.push_back(new MyBeam(mBeamList[0])); // Add the beam (clone of the first beam)
    mBeamList.back()->SetBeamIndex(beamIndex); // Set the index for the new beam
  • You must implement the GetEM_Rcvr and GetEM_Xmtr methods in your beam class.

(Examples of this code may be found in WsfPassiveSensor and WsfRadarSensor.)

From that point forward the beam owner and beam index will be maintained by the sensor framework.

Constructor & Destructor Documentation

◆ WsfSensorBeam() [1/2]

◆ WsfSensorBeam() [2/2]

WsfSensorBeam::WsfSensorBeam ( const WsfSensorBeam & aSrc)
default

References WsfSensorBeam().

◆ ~WsfSensorBeam()

virtual WsfSensorBeam::~WsfSensorBeam ( )
virtualdefault

Member Function Documentation

◆ GetBeamIndex()

size_t WsfSensorBeam::GetBeamIndex ( ) const
inline

◆ GetClutter()

◆ GetEM_Rcvr()

◆ GetEM_Xmtr()

◆ GetIntegrationGain()

double WsfSensorBeam::GetIntegrationGain ( ) const
virtual

◆ GetNumberOfPulsesIntegrated()

int WsfSensorBeam::GetNumberOfPulsesIntegrated ( ) const
virtual

◆ GetSensorMode()

◆ GetSignalProcessors()

◆ Initialize()

bool WsfSensorBeam::Initialize ( double aSimTime)
virtual

◆ operator=()

WsfSensorBeam & WsfSensorBeam::operator= ( const WsfSensorBeam & aRhs)

◆ ProcessInput()

◆ SetBeamIndex()

void WsfSensorBeam::SetBeamIndex ( size_t aBeamIndex)
inline

Set the beam index for the second an subsequent beams. The application is responsible for calling this when a beam is first added to the beam list.

Referenced by WsfPassiveSensor::PassiveMode::ProcessInput().

◆ SetBeamOwner()

void WsfSensorBeam::SetBeamOwner ( WsfSensorMode * aSensorModePtr)
inline

Set the beam owner (the parent mode).

References WsfSensorMode.

Referenced by WsfSAR_Sensor::SAR_Mode::SAR_Mode().

◆ SetIntegrationGain()

void WsfSensorBeam::SetIntegrationGain ( double aIntegrationGain)
virtual

◆ WsfSensor

◆ WsfSensorMode

◆ WsfSensorModeList

friend class WsfSensorModeList
friend

References WsfSensorBeam(), and WsfSensorModeList.

Referenced by WsfSensorModeList.


The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved