|
WSF
|
#include <WsfRF_Repeater.hpp>
Public Types | |
| enum | OperatingMode { cOM_MANUAL , cOM_SEMIAUTO , cOM_AUTO } |
| The operating mode of the repeater. More... | |
Public Member Functions | |
| WsfRF_Repeater () | |
| WsfRF_Repeater (const WsfRF_Repeater &aSrc) | |
| WsfRF_Repeater & | operator= (const WsfRF_Repeater &)=delete |
| ~WsfRF_Repeater ()=default | |
| WsfRF_Repeater * | Clone () const |
| Creates and returns a pointer to a clone of this object. | |
| bool | Initialize (double aSimTime, WsfWeapon *aWeaponPtr) |
| bool | ProcessInput (UtInput &aInput) |
| bool | ProcessInputBlock (UtInput &aInput) |
| A convenience method to check for and process a 'repeater/end_repeater' block. | |
| void | Reset (double aSimTime) |
| OperatingMode | GetOperatingMode () const |
| bool | IsSignalFollowing () const |
| void | RegisterTrack (const WsfTrack *aTrackPtr) |
| void | RegisterTrackId (WsfTrackId aTrackId, size_t aTargetIndex) |
| void | RemoveTrackId (WsfTrackId aTrackId, size_t aTargetIndex) |
| WsfTrackId | MergedTrackId (WsfTrackId aProcessedTrackId) |
| bool | CheckDetectAndUpdate (double aSimTime, WsfEM_Xmtr *aXmtrPtr, WsfSensorResult &aResult, const WsfEM_Interaction &aTargetInteraction) |
| void | SensorTrackDropped (double aSimTime, WsfTrackId aTrackId, size_t aTargetIndex) |
| void | SensorTrackInitiated (double aSimTime, const WsfTrack *aTrackPtr) |
| void | SensorTrackUpdated (double aSimTime, const WsfTrack *aTrackPtr) |
A repeater to implement....
The operating mode of the repeater.
| WsfRF_Repeater::WsfRF_Repeater | ( | ) |
Construct a RF repeater jammer processor.
References cOM_MANUAL.
Referenced by Clone(), operator=(), WsfRF_Repeater(), and ~WsfRF_Repeater().
| WsfRF_Repeater::WsfRF_Repeater | ( | const WsfRF_Repeater & | aSrc | ) |
Copy construct a RF repeater jammer.
References WsfRF_Repeater().
|
default |
References Clone(), Initialize(), ProcessInput(), ProcessInputBlock(), Reset(), and WsfRF_Repeater().
| bool WsfRF_Repeater::CheckDetectAndUpdate | ( | double | aSimTime, |
| WsfEM_Xmtr * | aXmtrPtr, | ||
| WsfSensorResult & | aResult, | ||
| const WsfEM_Interaction & | aTargetInteraction ) |
Checks and reports results of a detection attempt. Reports 'true' if the transmitter can be detected or the ESM/RWR sensor is invalid/null or 'false' if there is a failed detection attempt
| aSimTime | [input] The current simulation time. |
| aXmtrPtr | [input] Pointer to the jammer transmitter. |
| aResult | [output] A Result object that contains detailed information about the result detection attempt. |
| aTargetInteraction | [input] The interaction object representing the interaction to be jammed (radio, radar, ESM, etc.). This input is used to get the pointer to the receiver and it's current pointing information. |
References WsfPassiveSensor::PassiveMode::CanDetect(), WsfEW_Effect::cEB_REPEATER_UPDATE, WsfEW_Result::Find(), WsfSensor::GetCurrentMode(), WsfPlatform::GetIndex(), WsfEM_XmtrRcvr::GetMinimumAntennaGain(), WsfObject::GetName(), WsfEM_XmtrRcvr::GetPeakAntennaGain(), WsfEM_XmtrRcvr::GetPlatform(), WsfEM_Interaction::GetTransmitter(), WsfPlatformPart::IsTurnedOn(), WsfEW_Effects::mCurrentRepeaterData, WsfEW_Result::mEW_Effects, WsfEM_Interaction::BeamData::mGain, WsfEW_Effects::RepeaterData::mGain, WsfEW_Effects::mMask, WsfEW_Effects::RepeaterData::mMinGain, WsfEW_Effects::RepeaterData::mPeakGain, WsfEM_Interaction::mXmtrBeam, and targetIndex().
| WsfRF_Repeater * WsfRF_Repeater::Clone | ( | ) | const |
Creates and returns a pointer to a clone of this object.
References WsfRF_Repeater().
Referenced by ~WsfRF_Repeater().
|
inline |
| bool WsfRF_Repeater::Initialize | ( | double | aSimTime, |
| WsfWeapon * | aWeaponPtr ) |
Initialize the RF repeating jammer.
References Reset().
Referenced by ~WsfRF_Repeater().
|
inline |
| WsfTrackId WsfRF_Repeater::MergedTrackId | ( | WsfTrackId | aProcessedTrackId | ) |
References WsfTrackId::IsNull().
|
delete |
References WsfRF_Repeater().
| bool WsfRF_Repeater::ProcessInput | ( | UtInput & | aInput | ) |
Process input for a a generic source.
References cOM_AUTO, cOM_MANUAL, and cOM_SEMIAUTO.
Referenced by ProcessInputBlock(), and ~WsfRF_Repeater().
| bool WsfRF_Repeater::ProcessInputBlock | ( | UtInput & | aInput | ) |
A convenience method to check for and process a 'repeater/end_repeater' block.
References ProcessInput().
Referenced by ~WsfRF_Repeater().
| void WsfRF_Repeater::RegisterTrack | ( | const WsfTrack * | aTrackPtr | ) |
References WsfTrack::GetSensorNameId(), WsfTrack::GetTargetIndex(), WsfTrack::GetTrackId(), and WsfTrackId::IsNull().
Referenced by SensorTrackInitiated(), and WsfRF_Jammer::StartJammingTrack().
| void WsfRF_Repeater::RegisterTrackId | ( | WsfTrackId | aTrackId, |
| size_t | aTargetIndex ) |
References WsfTrackId::IsNull().
Referenced by WsfRF_Jammer::StartJamming(), and WsfRF_Jammer::UpdateJamming().
| void WsfRF_Repeater::RemoveTrackId | ( | WsfTrackId | aTrackId, |
| size_t | aTargetIndex ) |
References WsfTrackId::IsNull().
Referenced by SensorTrackDropped().
| void WsfRF_Repeater::Reset | ( | double | aSimTime | ) |
Referenced by Initialize(), and ~WsfRF_Repeater().
| void WsfRF_Repeater::SensorTrackDropped | ( | double | aSimTime, |
| WsfTrackId | aTrackId, | ||
| size_t | aTargetIndex ) |
Cease jammer operations for a given target
| aSimTime | [input] The current simulation time. |
| aTrackId | [input] The assigned Track Id of the target. |
| aTargetIndex | [Input] The platform index of the target to be jammed. |
References WsfComponentList::RoleIterator< T >::AtEnd(), WsfTaskManager::CancelTask(), cOM_MANUAL, cOM_SEMIAUTO, WsfTaskResource::mNameId, RemoveTrackId(), and WsfTaskManager::TasksAssignedFor().
| void WsfRF_Repeater::SensorTrackInitiated | ( | double | aSimTime, |
| const WsfTrack * | aTrackPtr ) |
Start jamming a given target
| aSimTime | [input] The current simulation time. |
| aTrackPtr | [input] The assigned Track Pointer of the target to be jammed. |
References cOM_AUTO, WsfTrack::GetTargetName(), WsfTrack::GetTrackId(), and RegisterTrack().
Referenced by SensorTrackUpdated().
| void WsfRF_Repeater::SensorTrackUpdated | ( | double | aSimTime, |
| const WsfTrack * | aTrackPtr ) |
Currently jamming target and update sensor track
| aSimTime | [input] The current simulation time. |
| aTrackPtr | [input] The assigned Track Pointer of the target to be jammed. |
References cOM_AUTO, WsfTrack::GetSignalCount(), WsfTrack::GetSignalEntry(), WsfTrack::GetTargetIndex(), WsfTrack::GetTargetName(), WsfTrack::GetTrackId(), and SensorTrackInitiated().