Eaagles::Simulation::Antenna Class Reference

Collaboration diagram for Eaagles::Simulation::Antenna:

Collaboration graph
[legend]
List of all members.

Public Types

enum  Polarization {
  NONE, VERTICAL, HORIZONTAL, SLANT,
  RHC, LHC
}

Public Member Functions

 Antenna ()
virtual void rfTransmit (Emission *const em)
RfSystem * getSystem ()
const RfSystem * getSystem () const
virtual bool setSystem (RfSystem *const p)
int getMaxEmissions () const
int getMaxTargets () const
LCreal getPolarizationGain (const Polarization p1) const
Polarization getPolarization () const
LCreal getGain () const
const Basic::LcTablegainPatternTable () const
bool isGainPatternDegrees () const
LCreal getTransmitThreshold () const
virtual bool setPolarization (const Polarization p)
virtual bool setThreshold (const LCreal th)
virtual bool setGain (LCreal const g)
virtual bool setSlotPolarization (Basic::LcString *const v)
virtual bool setSlotThreshold (Basic::LcPower *const p)
virtual bool setSlotGain (const Basic::LcNumber *const g)
virtual bool setSlotGainPattern (Basic::LcTable *const tbl)
virtual bool setSlotGainPatternDeg (const Basic::LcNumber *const g)
virtual bool onRfEmissionReturnEventAntenna (Emission *const)
virtual bool onStartScanEvent (Basic::LcInt *const bar)
virtual bool onEndScanEvent (Basic::LcInt *const bar)
virtual bool onRfEmissionEvent (Emission *const)
virtual bool event (const int event, Basic::LcObject *const obj=0)
virtual void reset ()

Static Public Member Functions

static LCreal getEffectiveArea (const LCreal gain, const LCreal lambda)

Protected Member Functions

void clearQueues ()
virtual void process (const LCreal dt)

Protected Attributes

QStack< Emission * > freeEmStack
QQueue< Emission * > inUseEmQueue
bool clearing

Private Attributes

RfSystem * sys
Polarization polar
LCreal gain
Basic::LcTablegainPattern
LCreal threshold
bool gainPatternDeg

Static Private Attributes

static const int MAX_EMISSIONS = 10000

Member Enumeration Documentation

enum Eaagles::Simulation::Antenna::Polarization

Enumerator:
NONE 
VERTICAL 
HORIZONTAL 
SLANT 
RHC 
LHC 


Constructor & Destructor Documentation

Eaagles::Simulation::Antenna::Antenna (  ) 


Member Function Documentation

void Eaagles::Simulation::Antenna::rfTransmit ( Emission *const  em  )  [virtual]

Transmit a RF emission packet at all active players.

RfSystem* Eaagles::Simulation::Antenna::getSystem (  )  [inline]

const RfSystem* Eaagles::Simulation::Antenna::getSystem (  )  const [inline]

bool Eaagles::Simulation::Antenna::setSystem ( RfSystem *const  p  )  [virtual]

Set pointer to our companion system.

int Eaagles::Simulation::Antenna::getMaxEmissions (  )  const [inline]

System limits.

int Eaagles::Simulation::Antenna::getMaxTargets (  )  const [inline]

LCreal Eaagles::Simulation::Antenna::getPolarizationGain ( const Polarization  p1  )  const

Get the gain from the antenna polerization match (SIMAF Radar Fundamentals for EW, slide #273)

Polarization Eaagles::Simulation::Antenna::getPolarization (  )  const [inline]

LCreal Eaagles::Simulation::Antenna::getGain (  )  const [inline]

Antenna gain.

const Basic::LcTable* Eaagles::Simulation::Antenna::gainPatternTable (  )  const [inline]

Gain pattern.

bool Eaagles::Simulation::Antenna::isGainPatternDegrees (  )  const [inline]

LCreal Eaagles::Simulation::Antenna::getTransmitThreshold (  )  const [inline]

Antenna threshold (watts).

static LCreal Eaagles::Simulation::Antenna::getEffectiveArea ( const LCreal  gain,
const LCreal  lambda 
) [inline, static]

Antenna effective area (m^2) -- SIMAF Radar & EW slide 62.

virtual bool Eaagles::Simulation::Antenna::setPolarization ( const Polarization  p  )  [inline, virtual]

Member functions.

bool Eaagles::Simulation::Antenna::setThreshold ( const LCreal  th  )  [virtual]

sets our antenna threshold

bool Eaagles::Simulation::Antenna::setGain ( LCreal const   g  )  [virtual]

sets the gain

bool Eaagles::Simulation::Antenna::setSlotPolarization ( Basic::LcString *const   v  )  [virtual]

calls setPolarization()

slot functions that need public access because there is no corresponding member function

bool Eaagles::Simulation::Antenna::setSlotThreshold ( Basic::LcPower *const   p  )  [virtual]

converts a power to watts and sets our antenna threshold

bool Eaagles::Simulation::Antenna::setSlotGain ( const Basic::LcNumber *const  g  )  [virtual]

calls setGain()

bool Eaagles::Simulation::Antenna::setSlotGainPattern ( Basic::LcTable *const   tbl  )  [virtual]

sets our gain pattern

bool Eaagles::Simulation::Antenna::setSlotGainPatternDeg ( const Basic::LcNumber *const  g  )  [virtual]

sets the gain pattern is in degrees flag

bool Eaagles::Simulation::Antenna::onRfEmissionReturnEventAntenna ( Emission const  )  [virtual]

process events for RF Emission not sent by us. 1) Build a list of emission packets from the queue and compute the Line-Of-Sight (LOS) vectors back to the transmitter. 2) Transform LOS vectors to antenna coordinates 3) Compute antenna gains in the direction of the transmitter 4) Compute Antenna Effective Gains 5) Compute Antenna Effective Area and Polarization Gains 6) Compute total receiving antenaa gain and send the emission to our sensor

bool Eaagles::Simulation::Antenna::onStartScanEvent ( Basic::LcInt *const  bar  )  [virtual]

process the start of a scan

ScanGimbal Interface -- Event handler(s)

bool Eaagles::Simulation::Antenna::onEndScanEvent ( Basic::LcInt *const  bar  )  [virtual]

process the end of a scan

bool Eaagles::Simulation::Antenna::onRfEmissionEvent ( Emission const  )  [virtual]

process Returned RF Emission Events

Gimbal Interface -- Event handler(s)

virtual bool Eaagles::Simulation::Antenna::event ( const int  event,
Basic::LcObject *const   obj = 0 
) [virtual]

Component Interface.

void Eaagles::Simulation::Antenna::reset (  )  [virtual]

Reset parameters.

void Eaagles::Simulation::Antenna::clearQueues (  )  [protected]

clear out all queues

void Eaagles::Simulation::Antenna::process ( const LCreal  dt  )  [protected, virtual]

System class Interface -- phase() callbacks.


Member Data Documentation

QStack<Emission*> Eaagles::Simulation::Antenna::freeEmStack [protected]

Free emission stack.

QQueue<Emission*> Eaagles::Simulation::Antenna::inUseEmQueue [protected]

In use emission queue.

bool Eaagles::Simulation::Antenna::clearing [protected]

Clearing tracks & queue in progress.

const int Eaagles::Simulation::Antenna::MAX_EMISSIONS = 10000 [static, private]

Max size of emission queues and arrays.

RfSystem* Eaagles::Simulation::Antenna::sys [private]

Assigned R/F system (e.g., sensor, radio).

Polarization Eaagles::Simulation::Antenna::polar [private]

Polarization (enum).

Antenna parameters

LCreal Eaagles::Simulation::Antenna::gain [private]

Gain (no units).

Basic::LcTable* Eaagles::Simulation::Antenna::gainPattern [private]

Gain pattern (Table).

LCreal Eaagles::Simulation::Antenna::threshold [private]

Antenna threshold; don't send emission if Power is below this threshold (watts)

bool Eaagles::Simulation::Antenna::gainPatternDeg [private]

Gain pattern is in degrees flag (else radians).


Generated on Tue Dec 19 16:27:49 2006 for Eaagles by  doxygen 1.5.0