VR-Vantage 2.7 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends
ssSensor Class Reference

Contains information describing the sensor being simulated. More...

Public Member Functions

 ssSensor ()
 constructor
virtual ~ssSensor ()
 destructor
bool setBand (double lower, double upper, int numBins)
 set the wavelength band that is covered by the sensor and the number of wavelengths that are maintained for the sensor.
bool getBand (double &lower, double &upper, int &numBins)
 get the wavelength band that is covered by the sensor and the number of wavelengths.
double getMinRadiance () const
 gets the sensor minimum radiance defining the dynamic range that is used to scale the physics-based radiance data to a range from 0.0 to 1.0 for use in a response texture or final display.
double getMaxRadiance () const
 gets the sensor maximum radiance defining the dynamic range that is used to scale the physics-based radiance data to a range from 0.0 to 1.0 for use in a response texture or final display.
double getMinRange () const
 gets the sensor minimum range to scale the physics-based range data to a range from 0.0 to 1.0 for use in a response texture or final display.
double getMaxRange () const
 gets the sensor maximum range to scale the physics-based range data to a range from 0.0 to 1.0 for use in a response texture or final display.
double getDisplayRange ()
 Gets display range between m_minRange and m_maxRange for displays such as PPI.
void setDisplayRange (double range)
 Sets display range between m_minRange and m_maxRange for displays such as PPI.
double getMinWedgeExtent ()
void setMinWedgeExtent (double angle)
double getMaxWedgeExtent ()
void setMaxWedgeExtent (double angle)
 Sets the PPI max wedge extent.
bool getBacksweepState ()
 Gets the PPI back sweep state.
void setBacksweepState (bool backsweep)
 Sets the PPI back sweep state.
bool getOtwViewState ()
 Sets the enable flag for displaying the OTW view below the PPI display for debugging/demo.
void setOtwViewState (bool show)
 Sets the enable flag for displaying the OTW view below the PPI display for debugging/demo.
double getHeadingOffset ()
void setHeadingOffset (double offset)
double getMinVelocity () const
 gets the minimum detectable velocity
double getMaxVelocity () const
 gets the maximum unambiguous detectable Velocity
double getDownrangeResolution () const
 gets the sensor downrange resolution This is computed based on the sensor's Bandwidth
double getCrossrangeResolution ()
 gets the sensor azimuth resolution
void setTerrainSlantRange (double slantRange)
 sets the slant range to the terrain
double getTerrainSlantRange ()
 gets the slant range to the terrain
bool setMinMaxTemp (double minTemp, double maxTemp)
 sets the sensor minimum and maximum temperatures that are used to set the dynamic range of the sensor (min/max radiance)
double getMinTemp ()
 gets the sensor minimum temperatures that is used to set the dynamic range of the sensor (min radiance)
double getMaxTemp ()
 gets the sensor maximum temperatures that is used to set the dynamic range of the sensor (max radiance)
void setMaxLightLevel (double maxLightLevel)
 sets the sensor maximum light level for nvg/visual sensors that is used to set the dynamic range of the sensor (max radiance)
const double getMaxLightLevel ()
 gets the sensor maximum light level for nvg/visual sensors that is used to set the dynamic range of the sensor (max radiance)
const double getMaxPower ()
 gets the sensor gain compensation for radar sensors that is used to set the dynamic range of the sensor (max radiance)
unsigned int getNumberWavelengths ()
 get the number of wavelength bins used for the sensor
double * getWavelengthsArray ()
 get the wavelengths array - this specifies which wavelengths are used for each of the wavelengths used for the sensor.
double getWavelength (int i)
 get the wavelength at a specific index in the wavelength array.
bool setBandpass (double ax, double bx, double dx)
 An alternate way to set the wavelength band that is covered by the sensor, but here the delta and the number of wavelengths that are maintained for the sensor.
bool getBandpass (double &ax, double &bx, double &dx)
 gets the bandpass of the sensor
bool setPemitterW (double PemitterW)
 Sets the default emitter power [W] (legacy element, to be replaced by TRANSMITTER_RECEIVER power)
double getPemitterW ()
 Retrieves the default emitter power [W] (legacy element, to be replaced by TRANSMITTER_RECEIVER power)
bool setTransmitterGain (double AntGain)
 Sets the default directional transmitter antenna gain (legacy element, to be replaced by TRANSMITTER_RECEIVER gain DISTRIBUTION)
double getTransmitterGain ()
 Retrieves the default directional transmitter antenna gain (legacy element, to be replaced by TRANSMITTER_RECEIVER gain DISTRIBUTION)
bool setReceiverGain (double AntGain)
 Sets the default directional receiver antenna gain (legacy element, to be replaced by TRANSMITTER_RECEIVER gain DISTRIBUTION)
double getReceiverGain ()
 Retrieves the default directional receiver antenna gain (legacy element, to be replaced by TRANSMITTER_RECEIVER gain DISTRIBUTION)
bool setSysTempK (double degK)
 Sets the default radar system temperature [degK].
double getSysTempK ()
 Retrieves the radar system temperature [degK].
bool setFCemitterHz (double FCemitterHz)
 Sets the default center frequency of emitter (legacy element, to be replaced by TRANSMITTER_RECEIVER spectral array)
bool setFCemitterWavelength (double wavelength)
 Sets the default center wavelength of emitter (legacy element, to be replaced by TRANSMITTER_RECEIVER spectral array)
double getFCemitterHz ()
 Retrieves the default center frequency of emitter (legacy element, to be replaced by TRANSMITTER_RECEIVER spectral array)
double getFCemitterWavelength ()
 Retrieves the wavelength of center frequency of the emitter.
double getBWemitterHz () const
 Retrieves the default bandwidth of emitter (legacy element, to be replaced by TRANSMITTER_RECEIVER spectral array)
bool setChannelResolutionHz (double ChannelResolutionHz)
 Sets the default channel resolution of emitter.
double getChannelResolutionHz ()
 Retrieves the default channel resolution of emitter.
bool setPulseWidth (double PulseWidth)
 Sets the default pulsewidth of emitter.
double getPulseWidth ()
 Retrieves the default pulsewidth of emitter.
bool setPRF (double PRF)
 Sets the default pulse repetition frequency of emitter.
double getPRF ()
 Retrieves the default pulse repetition frequency of emitter.
bool setNFPRF (double PRF)
 Sets the default nonfoveal pulse repetition frequency of emitter.
double getNFPRF ()
 Retrieves the default nonfoveal pulse repetition frequency of emitter.
bool setTransmitterPolarizationAngle (double PolarizationAngle_deg)
 Sets the default polarization angle of RF Transmitter.
double getTransmitterPolarizationAngle ()
 Retrieves the default polarization angle of RF transmitter.
bool setReceiverPolarizationAngle (double PolarizationAngle_deg)
 Sets the default polarization angle of RF Receiver.
double getReceiverPolarizationAngle ()
 Retrieves the default polarization angle of RF Receiver.
bool setBeamWidth (double mrad)
 Sets the default beam or spot width of emitter.
double getBeamWidth ()
 Retrieves the default beam or spot width of emitter.
void setGainPattern (int pattern)
 sets the display type for radar sensors
const int getGainPattern ()
 gets the gain pattern for radar sensors
void setDisplayType (int type)
 sets the display type for radar sensors
const int getDisplayType ()
 gets the display type for radar sensors
bool setTAprops (double ThreshDetect, double ThreshClassify, double ThreshRecognize, double ThreshIdentify, double PersistenceTime)
bool getTAprops (double &ThreshDetect, double &ThreshClassify, double &ThreshRecognize, double &ThreshIdentify, double &PersistenceTime)
void setSaturationRatio (double satRatio)
 Sets the radar Signal-to-Noise ratio at saturation [unitless] = (surface-returned power + noise power) / (noise power).
double getSaturationRatio ()
 Gets the radar Signal-to-Noise ratio at saturation [unitless] = (surface-returned power + noise power) / (noise power).
double getRadarIFOVNoisePower ()
 computes and returns the noise power [W] associated with one ifov solid angle
double getRadarReceiverArea ()
 Computes and returns the radar receiver area [m2] as a function of wavelength and directivity.
double getRadarIFOVNominalReturnPower ()
 Computes the peak power [W] expected to be returned in one ifov solid angle in the case with no atmospherics, no system noise, and an RCS of 1 [unitless].
bool isVisualBand ()
 indicates the sensor's upper wavelength is less than 3 um and so this is a visual/NVG band sensor.
bool isNearIRBand ()
 indicates the sensor's upper wavelength is less than 3 um and lower wavelength is greater than 0.7 so this is a NVG band sensor.
bool isLongWaveBand ()
 indicates the sensor's upper wavelength is greater than 6 um and so this is a long wave IR band sensor.
bool isRadarBand ()
 indicates the sensor's lower wavelength is greater than 10000 um and so this is a radar sensor and it's response table will be filled with Ulaby-Dobson parameters.
bool isLadar ()
 indicates the sensor's wavelength band is less than 10% of center Wavelength
void getSensorSelect (float &w1, float &w2, float &w3, float &visSensor)
 gets the sensor weights for the emat1 reflectances - assumes NVG, MWIR, LWIR in the texture if visSensor is 1.0 then the sensor is an visual sensor and the visual textures should be used.
void setNumberSamples (unsigned int hsamples, unsigned int vsamples)
 sets the number of samples or pixels for the sensor's display
void setNumberHorizontalSamples (unsigned int hsamples)
 sets the number of horizontal samples or pixels for a sensor
unsigned int getNumberHorizontalSamples ()
 gets the number of horizontal samples or pixels for a sensor
void setNumberVerticalSamples (unsigned int vsamples)
 sets the number of vertical samples or pixels for a sensor
unsigned int getNumberVerticalSamples ()
 gets the number of vertical samples or pixels for a sensor
void setFOV (double horizontalFOV, double verticalFOV)
 set the sensor's field of view
void getFOV (double &horizontalFOV, double &verticalFOV)
 get the sensor's field of view
int getType ()
 get the sensor type
int getUniqueID ()
 get the sensor id must be unique to distiguish sensor.
void setUniqueID (int id)
 set the sensor id.
float * getPlanckIntegralTable ()
 gets the planck integral table containing the planck integral for each temperature from 0 K to the maximum temperature specified.
void setMaximumPlanckTableTemperature (int max)
 sets the maximum temperature used in the planck table
int getMaximumPlanckTableTemperature ()
 gets the maximum temperature used in the planck table
void setNumberPlanckTableTemperatures (unsigned int num)
 sets the number of temperatures used in the planck table
unsigned int getNumberPlanckTableTemperatures ()
 gets the number of temperatures used in the planck table
double getAutoMaxTemperature ()
 gets the maximum temperature that is automatically generated from the current tod and material table
double getAutoMinTemperature ()
 gets the minimum temperature that is automatically generated from the current tod and material table
double getAutoMaxDiurnalLight ()
 gets the maximum light irradiance for the current day that is automatically generated based on the max light during the day
double getAutoMinDiurnalLight ()
 gets the minimum light irradiance for the current day that is automatically generated based on the max light during the day
bool isAutoRadianceScale ()
 returns true if the the min/max radiance should use automatically generated values
void setAutoRadianceScale (bool flag)
 set flag indicating whether the min/max radiance should use automatically generated values
bool isDirty ()
 returns true if the sensor needs to be updated due to parameter changes or external changes.
bool isTimeChanged ()
 returns true if the sensor needs to be updated due to a tod change
void setGeocentricLocation (double x, double y, double z)
 set the geocentric location (meters)
void getGeocentricLocation (double &x, double &y, double &z)
 get the geocentric location (meters)
void setGeodeticLocation (double lat, double lon, double alt)
 set the geodetic location (degrees, degrees, meters)
void getGeodeticLocation (double &lat, double &lon, double &alt)
 get the geodetic location (degrees, degrees, meters)
void setOrientation (double h, double p, double r)
 set the body FRD orientation relative to local NED coords (radians)
void getOrientation (double &h, double &p, double &r)
 set the body FRD orientation relative to local NED coords (radians)
void setLinearVelocity (double e, double n, double u)
 set linear velocity in local ENU coords (m/s)
void getLinearVelocity (double &e, double &n, double &u)
 get linear velocity in local ENU coords (m/s)
void setLinearAcceleration (double e, double n, double u)
 set linear acceleration in local ENU coords (m/s2)
void getLinearAcceleration (double &e, double &n, double &u)
 get linear acceleration in local ENU coords (m/s2)
void setAngularVelocity (double e, double n, double u)
 set Angular velocity in local ENU coords (rad/s) Magnitude gives speed clockwise about direction.
void getAngularVelocity (double &e, double &n, double &u)
 get Angular velocity in local ENU coords (rad/s) Magnitude gives speed clockwise about direction.
void setFRDAngularVelocity (double y, double p, double r)
 setFRDAngularVelocity
void getFRDAngularVelocity (double &y, double &p, double &r)
 getFRDAngularVelocity
void setSpotfile (char *filename)
 Set the spot file name.
char * getSpotfile ()
 get the spot file name
void setAngularAcceleration (double e, double n, double u)
 set angular acceleration in local ENU coords (rad/s2) Magnitude gives acceleration clockwise about direction.
void getAngularAcceleration (double &e, double &n, double &u)
 get angular acceleration in local ENU coords (rad/s2) Magnitude gives acceleration clockwise about direction.
void convertRUB2NED (int hpix, int vpix, float range, float *vector)
 converts a vector from RUB (right-up-back) to NED (north-east-down).
void setTrack (TRACK *track, int numTracks)
 set track
void setTrackfileUpdate (double simTime,::ellipsoid *ellipsoid)
 set track file update
double computePlanckIntegral (double lowerWaveLength, double upperWaveLength, double temperature)
 Computes the Planck integral over a given range of wavelengths for a temperature JRMLibrary routine: rademit_approx.
double computePlanckIntegral (double temperature)
 Computes the Planck integral over the sensor's range of wavelengths for a temperature JRMLibrary routine: rademit_approx.
double getGain ()
 Gets the sensor gain - not used internally by SigSimRT.
double getLevel ()
 Gets the sensor level.
void setGain (double gain)
 Sets the sensor gain.
void setLevel (double level)
 Sets the sensor level.
char * getName ()
 Gets the name of the sensor.
void setName (const char *name)
 set the name for the sensor
SENSORgetSensorPtr ()
 get the SigSim sensor structure.
void setSensorPtr (SENSOR *sensorPtr)
 set the SigSim structure...
void setWorldLocation (double x, double y, double z)
 Set the world location of the sensor.
void getWorldLocation (double &x, double &y, double &z)
 get the world position out of ssSensor
void setSarReprojection (bool flag)
 Set the flag indicating that SAR reprojection is being performed.
bool getSarReprojection ()
 get the flag indicating that SAR reprojection is being performed
bool isSar ()
 Indicates if SAR is the current sensor type.
bool isIsar ()
 Indicates if ISAR is the current sensor type.
bool isPpi ()
 Indicates if PPI is the current sensor type.
bool isDopplerColoring ()
 indicates whether the radar display has Doppler coloring of moving targets.
void setDopplerColoring (bool state)
 indicates whether the radar display has Doppler coloring of moving targets.
bool isDopplerSpatialEffects ()
 indicates whether the radar display applies Doppler spatial effects for moving targets.
void setDopplerSpatialEffects (bool state)
 indicates whether the radar display applies Doppler spatial effects for moving targets.
void setSarBoresightROI (double x, double y, double width, double height)
 set the SAR area to be rendered/displayed
void getSarBoresightROI (double &x, double &y, double &width, double &height)
 get the SAR area to be rendered/displayed
void setSarIntegrationPathlength (double length)
 Set the SAR integration path length.
double getSarIntegrationPathlength ()
 Get the SAR integration path length.
void setSarShadowOrientationDown (bool flag)
 Set the SAR shadow orientation.
bool getSarShadowOrientationDown ()
 Get the SAR shadow orientation.
void setRadarIFOVSolidAngle (double ifovsr)
 Set the SAR IFOV solid angle.
double getRadarIFOVSolidAngle ()
 Get the SAR IFOV solid angle.
void setIsarIntegrationTime (double time)
 Set the ISAR integration time.
double getIsarIntegrationTime ()
 Get the ISAR integration time.
double getIntensityModulationGain ()
 Get the intensity modulation gain factor.
void setIntensityModulationGain (double imodGain)
 Set the intensity modulation gain factor.
void setNumSpectralBins (int sbins)
 Set the number of spectral bins to use in Spectral mode.
int getNumSpectralBins ()
 Get the number of spectral bins to use in Spectral mode.

Private Member Functions

bool initialize ()
 initialization of sensor
void setAutoMaxTemperature (double temp)
 sets the maximum temperature that is automatically generated from the current tod and material table
void setAutoMinTemperature (double temp)
 sets the minimum temperature that is automatically generated from the current tod and material table
void setAutoMaxDiurnalLight (double light)
 sets the maximum light irradiance for the current day that is automatically generated based on the max light during the day
void setAutoMinDiurnalLight (double light)
 sets the minimum light irradiance for the current day that is automatically generated based on the max light during the day
void recomputeMinMaxRadiance ()
 updates the min and max radiance assuming the min or max temperature or max light level has changed SigSim routine: OGL2Radiance
void recomputeMinMaxRange ()
 updates the min and max range, where m_minRange is the minimum detectable range and the max range is the maximum unambigous range
void recomputeMinMaxVelocity ()
void updatePlanckIntegralTable ()
 the emmission value in the GPU updates the planck integral table that is used in the planck texture for computing the emmission value in the GPU
double degreesToMilliradians (double deg)
 this is a SSE patch to prevent PI error
void clrTimeChanged ()
 indicates that sensor has been updated due to a tod change
void setTimeChanged ()
 indicates that sensor needs to be updated due to a tod change
void clrDirty ()
 indicates that sensor has been updated
void setDirty ()
 indicates that sensor needs to be updated

Private Attributes

int m_id
 unique ID for this sensor. Must be different than any other sensor
double m_minRange
 minimum detectable downrange
double m_maxRange
 maximum unambiguous downrange;
double m_minVel
 minimum detectable velocity
double m_maxVel
 maximum unambiguous velocity
double m_minRadiance
 minimum radiance level for dynamic range
double m_maxRadiance
 maximum radiance level for dynamic range
float * m_planckTable
 table containing the planck integral for all temperatures and all wavelengths used in generating a texture map used as a lut for computing the emission value in the GPU.
int m_maxTemperature
 maximum temperature for planck table
unsigned int m_numTemperatures
 number of temperatures for planck table
SENSORm_sensorPtr
 SigSim single sensor info.
RF_POWER_DENSITYm_powerDensity
 RF power density.
double m_autoMaxTemperature
 maximum temperature that is automatically generated from the current tod and material table
double m_autoMinTemperature
 minimum temperature that is automatically generated from the current tod and material table
double m_maxDiurnalLight
 maximum light irradiance for the current day
double m_minDiurnalLight
 minimum light irradiance for the current day
bool m_autoRadianceScale
 flag indicating whether the min/max radiance should use automatically generated values
bool m_dirty
 flag to determine if this sensor is upto date due to changes in the sensor's parameters
bool m_timeChanged
 flag to determine if this sensor's data is upto date due to changes in the time of day
double m_transmitterGain
 sigsimrt copy of antGains
double m_receiverGain
double m_pEmitterW
 sigsimrt copy of PemitterW
double m_sysTempK
 radar system temperature [degK]
double m_maxPower
 gain compensation for radar sensors
double m_satRatio
 signal to noise ratio at saturation
bool m_dopColoring
 Doppler coloring on/off.
bool m_dopplerSpatialFXState
 Doppler spatial FX on/off.
double m_dopplerThreshold
 Doppler threshold for MTI mode.
char m_spotFilepath [512]
 Spotfile.
double m_worldXCoord
double m_worldYCoord
double m_worldZCoord
bool m_sarReprojection
double m_sarBoresightRoiX
double m_sarBoresightRoiY
double m_sarBoresightRoiWidth
double m_sarBoresightRoiHeight
double m_sarIntegrationPathlength
double m_terrainSlantRange
double m_isarIntegrationTime
double m_ifovsr
bool m_sarShadowOrientationDown
int m_gainPattern
int m_displayType
double m_minWedgeExtent
double m_maxWedgeExtent
double m_displayRange
bool m_enableBacksweep
bool m_showOtwView
double m_headingOffset
double m_intensityModulationGain
int m_numSpectralBins

Static Private Attributes

static int s_sensorId

Friends

class SigSimRT
class ssRadar
class ssEnvironment
class ssMaterialSet
class ssAtmosphericTable

Detailed Description

Contains information describing the sensor being simulated.

The band width determines whether the sensor is NVG, MWIR, LWIR, RF, or visual. The resolution of the display, the field of view, and the location of the sensor are all specified here.

Constructor & Destructor Documentation

ssSensor::ssSensor ( )

constructor

virtual ssSensor::~ssSensor ( )
virtual

destructor

Returns
virtual

Member Function Documentation

bool ssSensor::setBand ( double  lower,
double  upper,
int  numBins 
)

set the wavelength band that is covered by the sensor and the number of wavelengths that are maintained for the sensor.

Set the number of wavelengths to 1 for a standard passband scene rendering. The full metin resolution of the band will be used in generating the data for the sensor, for example the atmospheric data is computed at the metin resolution before being converted to the number of wavelengths specified here.

Parameters
lower- lower wavelength [um]
upper- upper wavelength [um]
numBins
bool ssSensor::getBand ( double &  lower,
double &  upper,
int numBins 
)

get the wavelength band that is covered by the sensor and the number of wavelengths.

Parameters
lower- lower wavelength
upper- upper wavelength
&numBins- number of spectral bins to use in spectral mode
double ssSensor::getMinRadiance ( ) const

gets the sensor minimum radiance defining the dynamic range that is used to scale the physics-based radiance data to a range from 0.0 to 1.0 for use in a response texture or final display.

This is computed based on the sensor's min/max temperature for an IR sensor or the max light level for a visual/nvg band sensor.

  • units W/cm2/sr
Returns
double [W/cm2/sr]
double ssSensor::getMaxRadiance ( ) const

gets the sensor maximum radiance defining the dynamic range that is used to scale the physics-based radiance data to a range from 0.0 to 1.0 for use in a response texture or final display.

This is computed based on the sensor's min/max temperature for an IR sensor or the max light level for a visual/nvg band sensor.

Returns
double [W/cm2/sr]
double ssSensor::getMinRange ( ) const

gets the sensor minimum range to scale the physics-based range data to a range from 0.0 to 1.0 for use in a response texture or final display.

This is computed based on the sensor pulse width

  • units m
Returns
double [m]
double ssSensor::getMaxRange ( ) const

gets the sensor maximum range to scale the physics-based range data to a range from 0.0 to 1.0 for use in a response texture or final display.

This is computed based on the sensor's PRF

  • units m
Returns
double [m]
double ssSensor::getDisplayRange ( )

Gets display range between m_minRange and m_maxRange for displays such as PPI.

void ssSensor::setDisplayRange ( double  range)

Sets display range between m_minRange and m_maxRange for displays such as PPI.

double ssSensor::getMinWedgeExtent ( )
inline
gets the minimum circular hud/PPI wedge extent angle
Returns
min wedge extent angle
void ssSensor::setMinWedgeExtent ( double  angle)
inline
sets the minimum PPI wedge extent
Parameters
angle- the minimum wedge extent angle.
Returns
void.
double ssSensor::getMaxWedgeExtent ( )
inline
gets the maximum circular hud/PPI wedge extent angle
Returns
max wedge extent angle
void ssSensor::setMaxWedgeExtent ( double  angle)
inline

Sets the PPI max wedge extent.

Parameters
angle- the maximum wedge extent angle.
Returns
void.
bool ssSensor::getBacksweepState ( )
inline

Gets the PPI back sweep state.

Returns
flag indicating whether back sweep is enabled.
void ssSensor::setBacksweepState ( bool  backsweep)
inline

Sets the PPI back sweep state.

Parameters
backsweep- enable the PPI back sweep
bool ssSensor::getOtwViewState ( )
inline

Sets the enable flag for displaying the OTW view below the PPI display for debugging/demo.

Returns
flag indicating the enable of the OTW view.
void ssSensor::setOtwViewState ( bool  show)
inline

Sets the enable flag for displaying the OTW view below the PPI display for debugging/demo.

Parameters
show-flag indicating the enable of the OTW view.
double ssSensor::getHeadingOffset ( )
inline
gets the heading offset for the sensor - used by PPI to set the sweep arm heading could also be used for other sensors to look a different direction than the aircraft heading
Returns
heading offset to add to the sensor heading.
void ssSensor::setHeadingOffset ( double  offset)
inline
sets the heading offset for the sensor - used by PPI to set the sweep arm heading could also be used for other sensors to look a different direction than the aircraft heading
Parameters
offset- the heading offset to add to the sensor heading.
Returns
void.
double ssSensor::getMinVelocity ( ) const

gets the minimum detectable velocity

Returns
double
double ssSensor::getMaxVelocity ( ) const

gets the maximum unambiguous detectable Velocity

Returns
double
double ssSensor::getDownrangeResolution ( ) const

gets the sensor downrange resolution This is computed based on the sensor's Bandwidth

  • units m
Returns
double [m]
double ssSensor::getCrossrangeResolution ( )

gets the sensor azimuth resolution

  • units rad
Returns
double [rad]
void ssSensor::setTerrainSlantRange ( double  slantRange)

sets the slant range to the terrain

  • units m
Parameters
slantRange
double ssSensor::getTerrainSlantRange ( )

gets the slant range to the terrain

  • units m
Returns
double slantRange [m]
bool ssSensor::setMinMaxTemp ( double  minTemp,
double  maxTemp 
)

sets the sensor minimum and maximum temperatures that are used to set the dynamic range of the sensor (min/max radiance)

  • units degrees celius
Parameters
minTemp[degrees C]
maxTemp[degrees C]
double ssSensor::getMinTemp ( )

gets the sensor minimum temperatures that is used to set the dynamic range of the sensor (min radiance)

Returns
const [degrees C]
double ssSensor::getMaxTemp ( )

gets the sensor maximum temperatures that is used to set the dynamic range of the sensor (max radiance)

Returns
const [degrees C]
void ssSensor::setMaxLightLevel ( double  maxLightLevel)

sets the sensor maximum light level for nvg/visual sensors that is used to set the dynamic range of the sensor (max radiance)

Parameters
maxLightLevel[uW/cm2]
const double ssSensor::getMaxLightLevel ( )

gets the sensor maximum light level for nvg/visual sensors that is used to set the dynamic range of the sensor (max radiance)

Returns
const [uW/cm2]
const double ssSensor::getMaxPower ( )

gets the sensor gain compensation for radar sensors that is used to set the dynamic range of the sensor (max radiance)

Returns
const [unitless]
unsigned int ssSensor::getNumberWavelengths ( )

get the number of wavelength bins used for the sensor

Returns
unsigned int
double* ssSensor::getWavelengthsArray ( )

get the wavelengths array - this specifies which wavelengths are used for each of the wavelengths used for the sensor.

For the sensor this array has uniform spacing and all wavelengths specified are at center of wavelength bin.

Returns
double * [um]
double ssSensor::getWavelength ( int  i)

get the wavelength at a specific index in the wavelength array.

Parameters
i
Returns
double [um]
bool ssSensor::setBandpass ( double  ax,
double  bx,
double  dx 
)

An alternate way to set the wavelength band that is covered by the sensor, but here the delta and the number of wavelengths that are maintained for the sensor.

Set the number of wavelengths to 1 for a standard passband scene rendering. The full metin resolution of the band will be used in generating the data for the sensor, for example the atmospheric data is computed at the metin resolution before being converted to the number of wavelengths specified here.

Parameters
ax- lower wavelength [um]
bx- upper wavelength [um]
dx- delta wavelength [um] - set to bx-ax for passband
bool ssSensor::getBandpass ( double &  ax,
double &  bx,
double &  dx 
)

gets the bandpass of the sensor

Parameters
ax
bx
dx
bool ssSensor::setPemitterW ( double  PemitterW)

Sets the default emitter power [W] (legacy element, to be replaced by TRANSMITTER_RECEIVER power)

Parameters
PemitterW- transmitter power [W]
double ssSensor::getPemitterW ( )

Retrieves the default emitter power [W] (legacy element, to be replaced by TRANSMITTER_RECEIVER power)

Returns
const double - transmitter power [W]
bool ssSensor::setTransmitterGain ( double  AntGain)

Sets the default directional transmitter antenna gain (legacy element, to be replaced by TRANSMITTER_RECEIVER gain DISTRIBUTION)

Parameters
AntGain- directional transmitter antenna gain [unitless]
double ssSensor::getTransmitterGain ( )

Retrieves the default directional transmitter antenna gain (legacy element, to be replaced by TRANSMITTER_RECEIVER gain DISTRIBUTION)

Returns
const double - directional transmitter antenna gain [unitless]
bool ssSensor::setReceiverGain ( double  AntGain)

Sets the default directional receiver antenna gain (legacy element, to be replaced by TRANSMITTER_RECEIVER gain DISTRIBUTION)

Parameters
AntGain- directional receiver antenna gain [unitless]
double ssSensor::getReceiverGain ( )

Retrieves the default directional receiver antenna gain (legacy element, to be replaced by TRANSMITTER_RECEIVER gain DISTRIBUTION)

Returns
const double - directional receiver antenna gain [unitless]
bool ssSensor::setSysTempK ( double  degK)

Sets the default radar system temperature [degK].

Parameters
degK- system temperature
double ssSensor::getSysTempK ( )

Retrieves the radar system temperature [degK].

Returns
const double - radar system temperature [degK]
bool ssSensor::setFCemitterHz ( double  FCemitterHz)

Sets the default center frequency of emitter (legacy element, to be replaced by TRANSMITTER_RECEIVER spectral array)

Parameters
FCemitterHz- center frequency of emitter [Hz]
bool ssSensor::setFCemitterWavelength ( double  wavelength)

Sets the default center wavelength of emitter (legacy element, to be replaced by TRANSMITTER_RECEIVER spectral array)

Parameters
wavelength- center wavelength of emitter [m]
double ssSensor::getFCemitterHz ( )

Retrieves the default center frequency of emitter (legacy element, to be replaced by TRANSMITTER_RECEIVER spectral array)

Returns
const double - center frequency of emitter [Hz]
double ssSensor::getFCemitterWavelength ( )

Retrieves the wavelength of center frequency of the emitter.

Returns
const double - wavelength of center frequency [m]
double ssSensor::getBWemitterHz ( ) const

Retrieves the default bandwidth of emitter (legacy element, to be replaced by TRANSMITTER_RECEIVER spectral array)

Returns
const double - bandwidth of emitter [Hz]
bool ssSensor::setChannelResolutionHz ( double  ChannelResolutionHz)

Sets the default channel resolution of emitter.

Parameters
ChannelResolutionHz- channel resolution of emitter [Hz]
double ssSensor::getChannelResolutionHz ( )

Retrieves the default channel resolution of emitter.

Returns
const double - channel resolution of emitter [Hz]
bool ssSensor::setPulseWidth ( double  PulseWidth)

Sets the default pulsewidth of emitter.

Parameters
PulseWidth- pulsewidth of emitter [s]
double ssSensor::getPulseWidth ( )

Retrieves the default pulsewidth of emitter.

Returns
const double - pulsewidth of emitter [s]
bool ssSensor::setPRF ( double  PRF)

Sets the default pulse repetition frequency of emitter.

Parameters
PRF- pulse repetition frequency of emitter [Hz]
double ssSensor::getPRF ( )

Retrieves the default pulse repetition frequency of emitter.

Returns
const double - pulse repetition frequency of emitter [Hz]
bool ssSensor::setNFPRF ( double  PRF)

Sets the default nonfoveal pulse repetition frequency of emitter.

Parameters
PRF- nonfoveal pulse repetition frequency of emitter [Hz]
double ssSensor::getNFPRF ( )

Retrieves the default nonfoveal pulse repetition frequency of emitter.

Returns
const double - nonfoveal pulse repetition frequency of emitter [Hz]
bool ssSensor::setTransmitterPolarizationAngle ( double  PolarizationAngle_deg)

Sets the default polarization angle of RF Transmitter.

Parameters
PolarizationAngle_deg[deg] Polarization angle of transmitter [H=0, V=90, U=45].
double ssSensor::getTransmitterPolarizationAngle ( )

Retrieves the default polarization angle of RF transmitter.

Returns
const double - [deg] polarization angle of transmitter
bool ssSensor::setReceiverPolarizationAngle ( double  PolarizationAngle_deg)

Sets the default polarization angle of RF Receiver.

Parameters
PolarizationAngle_deg[deg] Polarization angle of Receiver [H=0, V=90, U=45].
double ssSensor::getReceiverPolarizationAngle ( )

Retrieves the default polarization angle of RF Receiver.

Returns
const double - [deg] polarization angle of Receiver
bool ssSensor::setBeamWidth ( double  mrad)

Sets the default beam or spot width of emitter.

Parameters
mrad- beam or spot width of emitter [rad]
double ssSensor::getBeamWidth ( )

Retrieves the default beam or spot width of emitter.

Returns
const double - beam or spot width of emitter [rad]
void ssSensor::setGainPattern ( int  pattern)

sets the display type for radar sensors

Parameters
pattern
const int ssSensor::getGainPattern ( )

gets the gain pattern for radar sensors

Returns
int [0=Unity, 1=Lobe, 2=Rect]
void ssSensor::setDisplayType ( int  type)

sets the display type for radar sensors

Parameters
type
const int ssSensor::getDisplayType ( )

gets the display type for radar sensors

Returns
int [0=radiance, 1=power, 2=effectiveRCS]
bool ssSensor::setTAprops ( double  ThreshDetect,
double  ThreshClassify,
double  ThreshRecognize,
double  ThreshIdentify,
double  PersistenceTime 
)
Description:
Sets the Target Acquisition threshholds and persistence time of the active sensor.
Parameters
ThreshDetect= Detection Threshhold [unitless 0-1]
ThreshClassify= Classification Threshhold [unitless 0-1]. Should be < Detection Threshhold.
ThreshRecognize= Recognition Threshhold [unitless 0-1]. Should be < Classification Threshhold.
ThreshIdentify= Identification Threshhold [unitless 0-1]. Should be < Recognition Threshhold.
PersistenceTime= Time over which the TA status is considered valid [s]
Returns
true=success, false=failure.
bool ssSensor::getTAprops ( double &  ThreshDetect,
double &  ThreshClassify,
double &  ThreshRecognize,
double &  ThreshIdentify,
double &  PersistenceTime 
)
Description:
Gets the Target Acquisition threshholds and persistence time of the active sensor.
Parameters
ThreshDetect= Detection Threshhold [unitless 0-1]
ThreshClassify= Classification Threshhold [unitless 0-1]. Should be < Detection Threshhold.
ThreshRecognize= Recognition Threshhold [unitless 0-1]. Should be < Classification Threshhold.
ThreshIdentify= Identification Threshhold [unitless 0-1]. Should be < Recognition Threshhold.
PersistenceTime= Time over which the TA status is considered valid [s]
Returns
true=success, false=failure.
void ssSensor::setSaturationRatio ( double  satRatio)

Sets the radar Signal-to-Noise ratio at saturation [unitless] = (surface-returned power + noise power) / (noise power).

Parameters
satRatio- radar Signal-to-Noise ratio at saturation [unitless]
double ssSensor::getSaturationRatio ( )

Gets the radar Signal-to-Noise ratio at saturation [unitless] = (surface-returned power + noise power) / (noise power).

double ssSensor::getRadarIFOVNoisePower ( )

computes and returns the noise power [W] associated with one ifov solid angle

double ssSensor::getRadarReceiverArea ( )

Computes and returns the radar receiver area [m2] as a function of wavelength and directivity.

double ssSensor::getRadarIFOVNominalReturnPower ( )

Computes the peak power [W] expected to be returned in one ifov solid angle in the case with no atmospherics, no system noise, and an RCS of 1 [unitless].

Not the same as maxPower, which also contains noise. But this substitutes for (noise * (SNratio - 1)) when AGC is turned on.

bool ssSensor::isVisualBand ( )

indicates the sensor's upper wavelength is less than 3 um and so this is a visual/NVG band sensor.

bool ssSensor::isNearIRBand ( )

indicates the sensor's upper wavelength is less than 3 um and lower wavelength is greater than 0.7 so this is a NVG band sensor.

bool ssSensor::isLongWaveBand ( )

indicates the sensor's upper wavelength is greater than 6 um and so this is a long wave IR band sensor.

bool ssSensor::isRadarBand ( )

indicates the sensor's lower wavelength is greater than 10000 um and so this is a radar sensor and it's response table will be filled with Ulaby-Dobson parameters.

bool ssSensor::isLadar ( )

indicates the sensor's wavelength band is less than 10% of center Wavelength

void ssSensor::getSensorSelect ( float &  w1,
float &  w2,
float &  w3,
float &  visSensor 
)

gets the sensor weights for the emat1 reflectances - assumes NVG, MWIR, LWIR in the texture if visSensor is 1.0 then the sensor is an visual sensor and the visual textures should be used.

void ssSensor::setNumberSamples ( unsigned int  hsamples,
unsigned int  vsamples 
)

sets the number of samples or pixels for the sensor's display

Parameters
hsamples
vsamples
void ssSensor::setNumberHorizontalSamples ( unsigned int  hsamples)

sets the number of horizontal samples or pixels for a sensor

Parameters
hsamples
unsigned int ssSensor::getNumberHorizontalSamples ( )

gets the number of horizontal samples or pixels for a sensor

Returns
unsigned int
void ssSensor::setNumberVerticalSamples ( unsigned int  vsamples)

sets the number of vertical samples or pixels for a sensor

Parameters
vsamples
unsigned int ssSensor::getNumberVerticalSamples ( )

gets the number of vertical samples or pixels for a sensor

Returns
unsigned int
void ssSensor::setFOV ( double  horizontalFOV,
double  verticalFOV 
)

set the sensor's field of view

Parameters
horizontalFOV[degrees]
verticalFOV[degrees]
void ssSensor::getFOV ( double &  horizontalFOV,
double &  verticalFOV 
)

get the sensor's field of view

Parameters
horizontalFOV[degrees]
verticalFOV[degrees]
int ssSensor::getType ( )

get the sensor type

Returns
int EO_Blue = -3, EO_Green = -2, EO_Red = -1, EO = 0, IR, WAS, ASCAN, LRCS, SAR, ISAR, MTI, ACTIVE_SONAR, PASSIVE_SONAR, SIG_INT, ACTIVE_COMM, PASSIVE_COMM
int ssSensor::getUniqueID ( )

get the sensor id must be unique to distiguish sensor.

The id is automatically set when the sensor is created.

Returns
int
void ssSensor::setUniqueID ( int  id)

set the sensor id.

It must be unique to distiguish sensor. The id is typically automatically set when the sensor is created. Caution: the id should not be changed after the addSensor call is made or a getSensor will not work with this id.

Parameters
id
float* ssSensor::getPlanckIntegralTable ( )

gets the planck integral table containing the planck integral for each temperature from 0 K to the maximum temperature specified.

table is organized as float planckData[temperature][wavelength] This can be used as a lookup table (texture) to compute the emission for a material whose temperature and emissivity is known.

Returns
float [W/cm2/sr] note: not scaled by max radiance
void ssSensor::setMaximumPlanckTableTemperature ( int  max)

sets the maximum temperature used in the planck table

Parameters
max
int ssSensor::getMaximumPlanckTableTemperature ( )

gets the maximum temperature used in the planck table

Returns
int
void ssSensor::setNumberPlanckTableTemperatures ( unsigned int  num)

sets the number of temperatures used in the planck table

Parameters
num
unsigned int ssSensor::getNumberPlanckTableTemperatures ( )

gets the number of temperatures used in the planck table

Returns
unsigned int
double ssSensor::getAutoMaxTemperature ( )

gets the maximum temperature that is automatically generated from the current tod and material table

Returns
double
double ssSensor::getAutoMinTemperature ( )

gets the minimum temperature that is automatically generated from the current tod and material table

Returns
double
double ssSensor::getAutoMaxDiurnalLight ( )

gets the maximum light irradiance for the current day that is automatically generated based on the max light during the day

Returns
double
double ssSensor::getAutoMinDiurnalLight ( )

gets the minimum light irradiance for the current day that is automatically generated based on the max light during the day

Returns
double
bool ssSensor::isAutoRadianceScale ( )

returns true if the the min/max radiance should use automatically generated values

Returns
bool
void ssSensor::setAutoRadianceScale ( bool  flag)

set flag indicating whether the min/max radiance should use automatically generated values

Parameters
flag
bool ssSensor::isDirty ( )

returns true if the sensor needs to be updated due to parameter changes or external changes.

Returns
bool
bool ssSensor::isTimeChanged ( )

returns true if the sensor needs to be updated due to a tod change

Returns
bool
void ssSensor::setGeocentricLocation ( double  x,
double  y,
double  z 
)

set the geocentric location (meters)

Parameters
x= distance [m] away from ellipsoid center along direction to prime meridian
y= distance [m] away from ellipsoid center along direction to east longitudinal meridian
z= distance [m] away from ellipsoid center along direction to North geodetic pole
void ssSensor::getGeocentricLocation ( double &  x,
double &  y,
double &  z 
)

get the geocentric location (meters)

Parameters
x= distance [m] away from ellipsoid center along direction to prime meridian
y= distance [m] away from ellipsoid center along direction to east longitudinal meridian
z= distance [m] away from ellipsoid center along direction to North geodetic pole
void ssSensor::setGeodeticLocation ( double  lat,
double  lon,
double  alt 
)

set the geodetic location (degrees, degrees, meters)

Parameters
latin degrees, -90=SouthPole, 90=NorthPole
lonin degrees, 0=Prime Meridian, 359=1deg West of Prime Meridian
altin meters, above ellipsoid
void ssSensor::getGeodeticLocation ( double &  lat,
double &  lon,
double &  alt 
)

get the geodetic location (degrees, degrees, meters)

Parameters
latin degrees, -90=SouthPole, 90=NorthPole
lonin degrees, 0=Prime Meridian, 359=1deg West of Prime Meridian
altin meters, above ellipsoid
void ssSensor::setOrientation ( double  h,
double  p,
double  r 
)

set the body FRD orientation relative to local NED coords (radians)

Parameters
h= angle [rad] of 1st rotation : clockwise about body +z axis
p= angle [rad] of 2nd rotation : clockwise about new body +y axis
r= angle [rad] of 3rd rotation : clockwise about (even newer) body +x axis
void ssSensor::getOrientation ( double &  h,
double &  p,
double &  r 
)

set the body FRD orientation relative to local NED coords (radians)

Parameters
h= angle [rad] of 1st rotation : clockwise about body +z axis
p= angle [rad] of 2nd rotation : clockwise about new body +y axis
r= angle [rad] of 3rd rotation : clockwise about (even newer) body +x axis
void ssSensor::setLinearVelocity ( double  e,
double  n,
double  u 
)

set linear velocity in local ENU coords (m/s)

Parameters
e- East component
n- North component
u- Up component
void ssSensor::getLinearVelocity ( double &  e,
double &  n,
double &  u 
)

get linear velocity in local ENU coords (m/s)

Parameters
e- East component
n- North component
u- Up component
void ssSensor::setLinearAcceleration ( double  e,
double  n,
double  u 
)

set linear acceleration in local ENU coords (m/s2)

Parameters
e- East component
n- North component
u- Up component
void ssSensor::getLinearAcceleration ( double &  e,
double &  n,
double &  u 
)

get linear acceleration in local ENU coords (m/s2)

Parameters
e- East component
n- North component
u- Up component
void ssSensor::setAngularVelocity ( double  e,
double  n,
double  u 
)

set Angular velocity in local ENU coords (rad/s) Magnitude gives speed clockwise about direction.

Parameters
e- East component
n- North component
u- Up component
void ssSensor::getAngularVelocity ( double &  e,
double &  n,
double &  u 
)

get Angular velocity in local ENU coords (rad/s) Magnitude gives speed clockwise about direction.

Parameters
e- East component
n- North component
u- Up component
void ssSensor::setFRDAngularVelocity ( double  y,
double  p,
double  r 
)

setFRDAngularVelocity

set Angular velocity in local FRD coords (rad/s) Magnitude gives speed clockwise about direction.

Parameters
y- yaw component
p- pitch component
r- roll component
void ssSensor::getFRDAngularVelocity ( double &  y,
double &  p,
double &  r 
)

getFRDAngularVelocity

get Angular velocity in local FRD coords (rad/s) Magnitude gives speed clockwise about direction.

Parameters
y- yaw component
p- pitch component
r- roll component
void ssSensor::setSpotfile ( char *  filename)

Set the spot file name.

Parameters
filename
char* ssSensor::getSpotfile ( )

get the spot file name

Returns
char *filename
void ssSensor::setAngularAcceleration ( double  e,
double  n,
double  u 
)

set angular acceleration in local ENU coords (rad/s2) Magnitude gives acceleration clockwise about direction.

Parameters
e- East component
n- North component
u- Up component
void ssSensor::getAngularAcceleration ( double &  e,
double &  n,
double &  u 
)

get angular acceleration in local ENU coords (rad/s2) Magnitude gives acceleration clockwise about direction.

Parameters
e- East component
n- North component
u- Up component
void ssSensor::convertRUB2NED ( int  hpix,
int  vpix,
float  range,
float *  vector 
)

converts a vector from RUB (right-up-back) to NED (north-east-down).

Parameters
hpixhorizontal pixel position in the fov
vpixvertical pixel position in the fov
range[meters]
vector- 3 components [meters]
void ssSensor::setTrack ( TRACK track,
int  numTracks 
)

set track

Parameters
track
numTracks
void ssSensor::setTrackfileUpdate ( double  simTime,
::ellipsoid ellipsoid 
)

set track file update

Parameters
simTime
ellipsoid
double ssSensor::computePlanckIntegral ( double  lowerWaveLength,
double  upperWaveLength,
double  temperature 
)

Computes the Planck integral over a given range of wavelengths for a temperature JRMLibrary routine: rademit_approx.

Parameters
lowerWaveLength[um]
upperWaveLength[um]
temperature[degrees K]
Returns
double planck result [W/cm2]
double ssSensor::computePlanckIntegral ( double  temperature)

Computes the Planck integral over the sensor's range of wavelengths for a temperature JRMLibrary routine: rademit_approx.

Parameters
temperature[degrees K]
Returns
double planck result [W/cm2]
double ssSensor::getGain ( )

Gets the sensor gain - not used internally by SigSimRT.

Returns
double
double ssSensor::getLevel ( )

Gets the sensor level.

Returns
double
void ssSensor::setGain ( double  gain)

Sets the sensor gain.

Parameters
gain
void ssSensor::setLevel ( double  level)

Sets the sensor level.

Parameters
level
char* ssSensor::getName ( )

Gets the name of the sensor.

Returns
char
void ssSensor::setName ( const char *  name)

set the name for the sensor

Parameters
name
SENSOR* ssSensor::getSensorPtr ( )

get the SigSim sensor structure.

WARNING: This method may be moved to private in an upcoming release to avoid the possibilty of users corrupting the underlining data structure which is used in SigSim. So if this method is used, please inform JRM of the needed information and get methods will be added to provide the needed data.

Returns
SENSOR
void ssSensor::setSensorPtr ( SENSOR sensorPtr)

set the SigSim structure...

be careful!

Parameters
sensorPtr
void ssSensor::setWorldLocation ( double  x,
double  y,
double  z 
)

Set the world location of the sensor.

Parameters
x- world x position
y- world y position
z- world altitude
void ssSensor::getWorldLocation ( double &  x,
double &  y,
double &  z 
)

get the world position out of ssSensor

Parameters
x- world x position
y- world y position
z- world altitude
void ssSensor::setSarReprojection ( bool  flag)

Set the flag indicating that SAR reprojection is being performed.

Parameters
flag- flag indicating that SAR reprojection is being performed
bool ssSensor::getSarReprojection ( )

get the flag indicating that SAR reprojection is being performed

Returns
the flag indicating that SAR reprojection is being performed
bool ssSensor::isSar ( )

Indicates if SAR is the current sensor type.

Returns
true if SAR sensor
bool ssSensor::isIsar ( )

Indicates if ISAR is the current sensor type.

Returns
true if ISAR sensor
bool ssSensor::isPpi ( )

Indicates if PPI is the current sensor type.

Returns
true if PPI sensor
bool ssSensor::isDopplerColoring ( )

indicates whether the radar display has Doppler coloring of moving targets.

void ssSensor::setDopplerColoring ( bool  state)

indicates whether the radar display has Doppler coloring of moving targets.

bool ssSensor::isDopplerSpatialEffects ( )

indicates whether the radar display applies Doppler spatial effects for moving targets.

void ssSensor::setDopplerSpatialEffects ( bool  state)

indicates whether the radar display applies Doppler spatial effects for moving targets.

void ssSensor::setSarBoresightROI ( double  x,
double  y,
double  width,
double  height 
)

set the SAR area to be rendered/displayed

Parameters
x- SAR lower left corner X extent
y- SAR lower left corner X extent
width- SAR cross range extent
height- SAR down range extent
void ssSensor::getSarBoresightROI ( double &  x,
double &  y,
double &  width,
double &  height 
)

get the SAR area to be rendered/displayed

Parameters
x- SAR lower left corner X extent
y- SAR lower left corner X extent
width- SAR cross range extent
height- SAR down range extent
void ssSensor::setSarIntegrationPathlength ( double  length)

Set the SAR integration path length.

Parameters
length- SAR integration path length
double ssSensor::getSarIntegrationPathlength ( )

Get the SAR integration path length.

Returns
length - SAR integration path length
void ssSensor::setSarShadowOrientationDown ( bool  flag)

Set the SAR shadow orientation.

Parameters
flag- true if shadow orientation is down
bool ssSensor::getSarShadowOrientationDown ( )

Get the SAR shadow orientation.

Returns
true if shadow orientation is down
void ssSensor::setRadarIFOVSolidAngle ( double  ifovsr)

Set the SAR IFOV solid angle.

Parameters
ifovsr- SAR IFOV solid angle
double ssSensor::getRadarIFOVSolidAngle ( )

Get the SAR IFOV solid angle.

Returns
SAR IFOV solid angle
void ssSensor::setIsarIntegrationTime ( double  time)

Set the ISAR integration time.

Parameters
time- ISAR integration time
double ssSensor::getIsarIntegrationTime ( )

Get the ISAR integration time.

Returns
ISAR integration time
double ssSensor::getIntensityModulationGain ( )

Get the intensity modulation gain factor.

Returns
intensity modulation gain factor
void ssSensor::setIntensityModulationGain ( double  imodGain)

Set the intensity modulation gain factor.

Parameters
imodGain- intensity modulation gain factor
void ssSensor::setNumSpectralBins ( int  sbins)

Set the number of spectral bins to use in Spectral mode.

Parameters
sbins- number of spectral bins
int ssSensor::getNumSpectralBins ( )

Get the number of spectral bins to use in Spectral mode.

Returns
number of spectral bins
bool ssSensor::initialize ( )
private

initialization of sensor

Returns
bool
void ssSensor::setAutoMaxTemperature ( double  temp)
private

sets the maximum temperature that is automatically generated from the current tod and material table

Parameters
temp
void ssSensor::setAutoMinTemperature ( double  temp)
private

sets the minimum temperature that is automatically generated from the current tod and material table

Parameters
temp
void ssSensor::setAutoMaxDiurnalLight ( double  light)
private

sets the maximum light irradiance for the current day that is automatically generated based on the max light during the day

Parameters
temp
void ssSensor::setAutoMinDiurnalLight ( double  light)
private

sets the minimum light irradiance for the current day that is automatically generated based on the max light during the day

Parameters
temp
void ssSensor::recomputeMinMaxRadiance ( )
private

updates the min and max radiance assuming the min or max temperature or max light level has changed SigSim routine: OGL2Radiance

void ssSensor::recomputeMinMaxRange ( )
private

updates the min and max range, where m_minRange is the minimum detectable range and the max range is the maximum unambigous range

void ssSensor::recomputeMinMaxVelocity ( )
private
void ssSensor::updatePlanckIntegralTable ( )
private

the emmission value in the GPU updates the planck integral table that is used in the planck texture for computing the emmission value in the GPU

double ssSensor::degreesToMilliradians ( double  deg)
private

this is a SSE patch to prevent PI error

Parameters
doubledeg
Returns
double
void ssSensor::clrTimeChanged ( )
private

indicates that sensor has been updated due to a tod change

void ssSensor::setTimeChanged ( )
private

indicates that sensor needs to be updated due to a tod change

void ssSensor::clrDirty ( )
private

indicates that sensor has been updated

void ssSensor::setDirty ( )
private

indicates that sensor needs to be updated

Friends And Related Function Documentation

friend class SigSimRT
friend
friend class ssRadar
friend
friend class ssEnvironment
friend
friend class ssMaterialSet
friend
friend class ssAtmosphericTable
friend

Member Data Documentation

int ssSensor::m_id
private

unique ID for this sensor. Must be different than any other sensor

double ssSensor::m_minRange
private

minimum detectable downrange

double ssSensor::m_maxRange
private

maximum unambiguous downrange;

double ssSensor::m_minVel
private

minimum detectable velocity

double ssSensor::m_maxVel
private

maximum unambiguous velocity

double ssSensor::m_minRadiance
private

minimum radiance level for dynamic range

double ssSensor::m_maxRadiance
private

maximum radiance level for dynamic range

float* ssSensor::m_planckTable
private

table containing the planck integral for all temperatures and all wavelengths used in generating a texture map used as a lut for computing the emission value in the GPU.

int ssSensor::m_maxTemperature
private

maximum temperature for planck table

unsigned int ssSensor::m_numTemperatures
private

number of temperatures for planck table

SENSOR* ssSensor::m_sensorPtr
private

SigSim single sensor info.

RF_POWER_DENSITY* ssSensor::m_powerDensity
private

RF power density.

double ssSensor::m_autoMaxTemperature
private

maximum temperature that is automatically generated from the current tod and material table

double ssSensor::m_autoMinTemperature
private

minimum temperature that is automatically generated from the current tod and material table

double ssSensor::m_maxDiurnalLight
private

maximum light irradiance for the current day

double ssSensor::m_minDiurnalLight
private

minimum light irradiance for the current day

bool ssSensor::m_autoRadianceScale
private

flag indicating whether the min/max radiance should use automatically generated values

bool ssSensor::m_dirty
private

flag to determine if this sensor is upto date due to changes in the sensor's parameters

bool ssSensor::m_timeChanged
private

flag to determine if this sensor's data is upto date due to changes in the time of day

double ssSensor::m_transmitterGain
private

sigsimrt copy of antGains

double ssSensor::m_receiverGain
private
double ssSensor::m_pEmitterW
private

sigsimrt copy of PemitterW

double ssSensor::m_sysTempK
private

radar system temperature [degK]

double ssSensor::m_maxPower
private

gain compensation for radar sensors

double ssSensor::m_satRatio
private

signal to noise ratio at saturation

bool ssSensor::m_dopColoring
private

Doppler coloring on/off.

bool ssSensor::m_dopplerSpatialFXState
private

Doppler spatial FX on/off.

double ssSensor::m_dopplerThreshold
private

Doppler threshold for MTI mode.

char ssSensor::m_spotFilepath[512]
private

Spotfile.

double ssSensor::m_worldXCoord
private
double ssSensor::m_worldYCoord
private
double ssSensor::m_worldZCoord
private
bool ssSensor::m_sarReprojection
private
double ssSensor::m_sarBoresightRoiX
private
double ssSensor::m_sarBoresightRoiY
private
double ssSensor::m_sarBoresightRoiWidth
private
double ssSensor::m_sarBoresightRoiHeight
private
double ssSensor::m_sarIntegrationPathlength
private
double ssSensor::m_terrainSlantRange
private
double ssSensor::m_isarIntegrationTime
private
double ssSensor::m_ifovsr
private
bool ssSensor::m_sarShadowOrientationDown
private
int ssSensor::m_gainPattern
private
int ssSensor::m_displayType
private
double ssSensor::m_minWedgeExtent
private
double ssSensor::m_maxWedgeExtent
private
double ssSensor::m_displayRange
private
bool ssSensor::m_enableBacksweep
private
bool ssSensor::m_showOtwView
private
double ssSensor::m_headingOffset
private
double ssSensor::m_intensityModulationGain
private
int ssSensor::m_numSpectralBins
private
int ssSensor::s_sensorId
staticprivate

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


Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)