|
WSF
|
#include <WsfRadarSTC_SignalProcessor.hpp>


Public Member Functions | |
| WsfRadarSTC_SignalProcessor () | |
| Constructor. | |
| WsfRadarSTC_SignalProcessor (const WsfRadarSTC_SignalProcessor &aSrc)=default | |
| ~WsfRadarSTC_SignalProcessor () override=default | |
| WsfRadarSTC_SignalProcessor & | operator= (const WsfRadarSTC_SignalProcessor &)=delete |
| WsfSensorSignalProcessor * | Clone () const override |
| virtual bool | Initialize (double aSimTime, WsfSensor *aSensorPtr, WsfSensorMode *aModePtr) |
| bool | ProcessInput (UtInput &aInput) override |
| void | Execute (double aSimTime, WsfSensorResult &aResult) override |
| virtual bool | Initialize (double aSimTime, WsfSensor *aSensorPtr, WsfSensorMode *aModePtr, size_t aBeamIndex=0) |
| bool | ProcessInput (UtInput &aInput) override |
| Public Member Functions inherited from WsfObject | |
| WsfObject () | |
| This is the constructor for the WsfObject class. | |
| ~WsfObject () override | |
| This is the destructor for the WsfObject class. | |
| const char * | GetScriptClassName () const override |
| const std::string & | GetType () const |
| WsfStringId | GetTypeId () const |
| Get the string ID of the 'type' of the object. | |
| void | SetType (WsfStringId aType) |
| const std::string & | GetBaseType () const |
| WsfStringId | GetBaseTypeId () const |
| const TypeList & | GetTypeList () const |
| bool | IsA_TypeOf (WsfStringId aType) const |
| WsfObject & | operator= (const WsfObject &aRhs) |
| Assignment operator. | |
| template<typename T> | |
| void | Serialize (T &aBuff) |
| For XIO (de)serialization. | |
| const std::string & | GetName () const |
| WsfStringId | GetNameId () const |
| void | SetName (WsfStringId aName) |
Static Public Member Functions | |
| static WsfSensorSignalProcessor * | ObjectFactory (const std::string &aTypeName) |
| The object factory for the STC signal processor type. | |
| static void | AddObjectFactory (FactoryPtr aFactoryPtr) |
| static void | RemoveObjectFactory (FactoryPtr aFactoryPtr) |
| static WsfSensorSignalProcessor * | CreateInstance (const std::string &aTypeName) |
| static void | ClearTypes () |
Additional Inherited Members | |
| Public Types inherited from WsfSensorSignalProcessor | |
| using | FactoryPtr = WsfSensorSignalProcessor* (*)(const std::string&) |
| using | ObjectFactoryList = std::list<FactoryPtr> |
| Public Types inherited from WsfObject | |
| typedef std::vector< WsfStringId > | TypeList |
| The list of types returned by GetTypeList. | |
| WsfObject (const WsfObject &aSrc) | |
| Copy constructor (for Clone()). | |
| bool | mDebug {false} |
| If 'true' additional information is written out to aid debugging. | |
A class derived from WsfSensorSignalProcessor that defines a sensitivity time control processing technique for a radar sensor.
Sensitivity Time Control (STC) attempts to adjust receiver gain with time during a single pulse repetition period to get the best visibility of nearby and distant targets. It is used to attenuate the very strong signals returned from nearby ground clutter close to a Radar receiver. Without this signal attenuation, the receiver would routinely saturate due to the strong signals. STC effects are typically limited to around 50 miles, beyond that the receiver operates normally. Excessive STC can blank out potential returns of low RCS targets close to the receiver.
This signal processor is only applicable to radar sensors and was developed to be compatible with the SUPPRESSOR method of STC processing. It adjusts the received power, clutter power, and jamming power of a sensor detection attempt result.
| WsfRadarSTC_SignalProcessor::WsfRadarSTC_SignalProcessor | ( | ) |
Constructor.
Referenced by Clone(), ObjectFactory(), operator=(), and WsfRadarSTC_SignalProcessor().
|
default |
References WsfRadarSTC_SignalProcessor().
|
overridedefault |
|
overridevirtual |
Return a copy of this object. Must be implemented by all derived types. If cloning is impossible, a WsfUncloneableException should be thrown.
Implements WsfSensorSignalProcessor.
References WsfRadarSTC_SignalProcessor().
|
overridevirtual |
Implements WsfSensorSignalProcessor.
References WsfEW_Result::Find(), WsfEM_Xmtr::GetPulseRepetitionFrequency(), WsfEM_Interaction::GetTransmitter(), WsfEM_Interaction::mClutterPower, WsfEW_Result::mCoherentJammerPower, WsfSensorSignalProcessor::mDebug, WsfEM_Interaction::mInterferencePower, WsfEW_Result::mNoiseJammerPower, WsfEW_Result::mPulseJammerPower, WsfEM_Interaction::RelativeData::mRange, WsfEM_Interaction::mRcvdPower, and WsfEM_Interaction::mRcvrToTgt.
|
virtual |
|
static |
The object factory for the STC signal processor type.
References WsfRadarSTC_SignalProcessor().
|
delete |
References WsfRadarSTC_SignalProcessor().
|
overridevirtual |
Process input from a generic source.
Examine the current input command. If it is NOT one of the commands recognized by this class then it simply returns 'false'. If it is one of the commands recognized by this class then it processes the command and returns 'true'.
| aInput | a reference to a UtInput object. |
| UtInput::ExceptionBase | (or an object derived from it) if the command was recognized but contains some sort of error. |
Reimplemented from WsfObject.
References WsfSensorSignalProcessor::mDebug, and WsfSensorSignalProcessor::ProcessInput().