VR-Engage  2.2
Loading...
Searching...
No Matches
makRadarFx::DtSarRequest Class Reference

Detailed Description

This class encapsulates a request for a Synthetic Aperture Radar (SAR) image from the RadarFX server. It contains parameters that specify the sensor platform position, target location, radar system settings, and image format settings. SAR images provide a top-down radar view of terrain and objects.

#include <rfxSarMessage.h>

Inheritance diagram for makRadarFx::DtSarRequest:
[legend]

Public Member Functions

 DtSarRequest ()
 
virtual ~DtSarRequest ()
 
virtual void useObserverAsHost ()
 
virtual void setOwnshipLocation (DtVector location)
 
virtual DtVector ownshipLocation ()
 
virtual void setOwnshipEntityId (const std::string &name)
 
virtual std::string ownshipEntityId ()
 
virtual void useObserverForTarget ()
 
virtual void setTargetEntityId (const std::string &name)
 
virtual std::string targetEntityId ()
 
virtual void setTargetLocation (DtVector location)
 
virtual DtVector targetLocation ()
 
virtual void setRadarOffsetLocation (DtVector offset)
 
virtual DtVector radarOffsetLocation ()
 
virtual void setRadarOffsetOrientation (DtTaitBryan offsetOrientation)
 
virtual DtTaitBryan radarOffsetOrientation ()
 
virtual void setRadarSystemName (const std::string &name)
 
virtual std::string radarSystemName ()
 
virtual void setCrossrange (float width)
 
virtual float crossrange ()
 
virtual void setDownrange (float height)
 
virtual float downrange ()
 
virtual void setIsAgcPowerEnabled (bool isAgcPowerEnabled)
 
virtual bool isAgcPowerEnabled () const
 
virtual void setPower (float power)
 
virtual float power ()
 
virtual void setImageSize (const DtImageSize &size)
 
virtual DtImageSize imageSize ()
 
virtual void setImageFormat (DtImageFormat format)
 
virtual DtImageFormat imageFormat ()
 
virtual void setImageDataType (DtImageDataType type)
 
virtual DtImageDataType imageDataType ()
 
virtual void setImageRotation (DtImageRotation rotate)
 
virtual DtImageRotation imageRotation ()
 
virtual void setImageReturnMethod (unsigned int returnFlags)
 
virtual unsigned int imageReturnMethod ()
 
virtual void setImageSavePath (const std::string &filename)
 
virtual std::string imageSavePath ()
 
virtual void setImageFilename (const std::string &filename)
 
virtual std::string imageFilename ()
 
virtual void setRestoreState (bool restoreState)
 
virtual bool restoreState ()
 
void setOwnshipSpeed (float speed)
 
float ownshipSpeed ()
 
virtual int messageSize ()
 
virtual DtBaseMessageclone ()
 
Radar Platform Placement Mode Queries

Methods to determine how the radar platform is being positioned

virtual bool isUsingObserverAsHost ()
 
virtual bool isUsingEntityAsHost ()
 
virtual bool isUsingAbsoluteLocation ()
 
Target Placement Mode Queries

Methods to determine how the target is being positioned

virtual bool isUsingObserverForTarget ()
 
virtual bool isUsingEntityForTarget ()
 
virtual bool isUsingLocationForTarget ()
 
- Public Member Functions inherited from makRadarFx::DtImageRequest
 DtImageRequest ()
 
virtual ~DtImageRequest ()
 
- Public Member Functions inherited from makRadarFx::DtBaseMessage
 DtBaseMessage ()
 
virtual ~DtBaseMessage ()
 
virtual unsigned int messageType () const
 
virtual unsigned char * encode ()
 
virtual void setRequestorId (const std::string &requestor)
 
virtual std::string requestorId ()
 
virtual void setRequestId (int id)
 
virtual int requestId ()
 

Static Public Member Functions

static DtBaseMessagedecode (unsigned char *buffer, int length)
 

Protected Member Functions

virtual void serialize (DtStreamWriter &writer)
 
virtual void deserialize (DtStreamReader &reader)
 

Protected Attributes

bool myUseObserverAsHost
 
bool myUseEntityAsHost
 
bool myUseAbsoluteOwnship
 
bool myUseObserverForTarget
 
bool myUseEntityAsTarget
 
bool myUseAbsoluteTarget
 
bool myIsAgcPowerEnabled
 
std::string myOwnshipName
 
std::string myTargetName
 
DtVector myOwnshipLocation
 
DtVector myTargetLocation
 
DtVector myRadarOffsetLocation
 
DtTaitBryan myRadarOffsetOrientation
 
std::string myRadarName
 
float myCrossrange
 
float myDownrange
 
float myPower
 
DtImageSize myImageSize
 
DtImageFormat myImageFormat
 
DtImageDataType myImageDataType
 
DtImageRotation myImageRotation
 
unsigned int myReturnMethod
 
bool myRestoreState
 
float myOwnshipSpeed
 
std::string myImageSavePath
 
std::string myImageFilename
 
- Protected Attributes inherited from makRadarFx::DtBaseMessage
unsigned int myMessageType
 
std::string myRequestorId
 
int myRequestId
 

Constructor & Destructor Documentation

◆ DtSarRequest()

makRadarFx::DtSarRequest::DtSarRequest ( )

Default constructor.

Initializes a new SAR image request message with default settings

◆ ~DtSarRequest()

virtual makRadarFx::DtSarRequest::~DtSarRequest ( )
virtual

Virtual destructor.

Member Function Documentation

◆ useObserverAsHost()

virtual void makRadarFx::DtSarRequest::useObserverAsHost ( )
virtual

Uses the current observer's position and orientation for the radar platform.

When called, this function configures the request to use the current observer's position and orientation as the radar platform location. The client does not need to set an ownship location or orientation if using this method to position the sensor.

◆ setOwnshipLocation()

virtual void makRadarFx::DtSarRequest::setOwnshipLocation ( DtVector location)
virtual

Sets an absolute position for the radar platform.

Parameters
locationVector containing the radar platform position (latitude, longitude, altitude)

If the radar platform is not hosted in the simulation system, this method allows explicit specification of the platform position for the SAR imagery.

◆ ownshipLocation()

virtual DtVector makRadarFx::DtSarRequest::ownshipLocation ( )
virtual

Gets the absolute radar platform position.

Returns
Vector containing the radar platform position (latitude, longitude, altitude)

Returns the currently set absolute position for the radar platform.

◆ setOwnshipEntityId()

virtual void makRadarFx::DtSarRequest::setOwnshipEntityId ( const std::string & name)
virtual

Sets an entity ID to use for the radar platform position.

Parameters
nameString identifier of the entity to use as the radar platform

If the radar platform is hosted by the simulation system, this method allows specification of the entity by its global simulation name or ID.

◆ ownshipEntityId()

virtual std::string makRadarFx::DtSarRequest::ownshipEntityId ( )
virtual

Gets the entity ID used for the radar platform position.

Returns
String identifier of the entity used as the radar platform

Returns the entity identifier that will be used to locate the radar platform.

◆ isUsingObserverAsHost()

virtual bool makRadarFx::DtSarRequest::isUsingObserverAsHost ( )
virtual

Checks if using the observer position for the radar platform.

Returns
True if the observer is being used as the radar platform host

◆ isUsingEntityAsHost()

virtual bool makRadarFx::DtSarRequest::isUsingEntityAsHost ( )
virtual

Checks if using an entity as the radar platform.

Returns
True if an entity ID is being used for the radar platform host

◆ isUsingAbsoluteLocation()

virtual bool makRadarFx::DtSarRequest::isUsingAbsoluteLocation ( )
virtual

Checks if using an absolute position for the radar platform.

Returns
True if absolute coordinates are being used for the radar platform position

◆ useObserverForTarget()

virtual void makRadarFx::DtSarRequest::useObserverForTarget ( )
virtual

Uses the current observer's view direction to determine the target location.

When called, this function configures the request to use the current observer's view direction to determine the target location for the SAR image. The system will cast a ray along the view direction to find the intersection with terrain.

◆ setTargetEntityId()

virtual void makRadarFx::DtSarRequest::setTargetEntityId ( const std::string & name)
virtual

Sets an entity ID to use as the target location.

Parameters
nameString identifier of the entity to use as the target

Specifies an entity by its global simulation name or ID to use as the target location for the SAR image. The center of the image will be positioned at this entity's location.

◆ targetEntityId()

virtual std::string makRadarFx::DtSarRequest::targetEntityId ( )
virtual

Gets the entity ID used as the target location.

Returns
String identifier of the entity used as the target

Returns the entity identifier that will be used to locate the target.

◆ setTargetLocation()

virtual void makRadarFx::DtSarRequest::setTargetLocation ( DtVector location)
virtual

Sets an absolute position for the target location.

Parameters
locationVector containing the target position (latitude, longitude, altitude)

Specifies the absolute coordinates for the target location of the SAR image. Location format is latitude/longitude/altitude (in degrees/meters). The altitude component is optional and will be determined by terrain height if not specified.

◆ targetLocation()

virtual DtVector makRadarFx::DtSarRequest::targetLocation ( )
virtual

Gets the absolute target position.

Returns
Vector containing the target position (latitude, longitude, altitude)

Returns the currently set target position for the SAR image.

◆ isUsingObserverForTarget()

virtual bool makRadarFx::DtSarRequest::isUsingObserverForTarget ( )
virtual

Checks if using the observer view for the target position.

Returns
True if the observer view is being used to determine the target location

◆ isUsingEntityForTarget()

virtual bool makRadarFx::DtSarRequest::isUsingEntityForTarget ( )
virtual

Checks if using an entity as the target.

Returns
True if an entity ID is being used for the target location

◆ isUsingLocationForTarget()

virtual bool makRadarFx::DtSarRequest::isUsingLocationForTarget ( )
virtual

Checks if using an absolute position for the target.

Returns
True if absolute coordinates are being used for the target location

◆ setRadarOffsetLocation()

virtual void makRadarFx::DtSarRequest::setRadarOffsetLocation ( DtVector offset)
virtual

Sets the offset location of the radar sensor on the hosting entity.

Parameters
offsetVector containing the offset position in entity-relative coordinates

Specifies the position offset of the radar sensor relative to the hosting entity's reference point. This is only valid when a hosting entity is defined using setOwnshipEntityId().

◆ radarOffsetLocation()

virtual DtVector makRadarFx::DtSarRequest::radarOffsetLocation ( )
virtual

Gets the radar sensor offset location.

Returns
Vector containing the offset position in entity-relative coordinates

Returns the currently set position offset of the radar sensor relative to the hosting entity's reference point.

◆ setRadarOffsetOrientation()

virtual void makRadarFx::DtSarRequest::setRadarOffsetOrientation ( DtTaitBryan offsetOrientation)
virtual

Sets the offset orientation of the radar sensor on the hosting entity.

Parameters
offsetOrientationTait-Bryan angles representing the orientation offset

Specifies the orientation offset of the radar sensor relative to the hosting entity's reference orientation. This is only valid when a hosting entity is defined using setOwnshipEntityId().

◆ radarOffsetOrientation()

virtual DtTaitBryan makRadarFx::DtSarRequest::radarOffsetOrientation ( )
virtual

Gets the radar sensor offset orientation.

Returns
Tait-Bryan angles representing the orientation offset

Returns the currently set orientation offset of the radar sensor relative to the hosting entity's reference orientation.

◆ setRadarSystemName()

virtual void makRadarFx::DtSarRequest::setRadarSystemName ( const std::string & name)
virtual

Sets the radar system name to use for the SAR image.

Parameters
nameString identifier of the radar system configuration

Specifies the name of the radar system configuration to use for generating the SAR image. This must match one of the predefined radar systems that the RadarFX server has configured. Different radar systems have different capabilities and characteristics.

◆ radarSystemName()

virtual std::string makRadarFx::DtSarRequest::radarSystemName ( )
virtual

Gets the radar system name.

Returns
String identifier of the radar system configuration

Returns the currently set radar system name.

◆ setCrossrange()

virtual void makRadarFx::DtSarRequest::setCrossrange ( float width)
virtual

Sets the crossrange size for the SAR image.

Parameters
widthSize of the crossrange in meters

Sets the width (crossrange dimension) of the target area for the SAR image in meters. This controls the horizontal field of view of the radar image.

◆ crossrange()

virtual float makRadarFx::DtSarRequest::crossrange ( )
virtual

Gets the crossrange size.

Returns
Size of the crossrange in meters

Returns the currently set width (crossrange dimension) of the target area.

◆ setDownrange()

virtual void makRadarFx::DtSarRequest::setDownrange ( float height)
virtual

Sets the downrange size for the SAR image.

Parameters
heightSize of the downrange in meters

Sets the height (downrange dimension) of the target area for the SAR image in meters. This controls the vertical field of view of the radar image.

◆ downrange()

virtual float makRadarFx::DtSarRequest::downrange ( )
virtual

Gets the downrange size.

Returns
Size of the downrange in meters

Returns the currently set height (downrange dimension) of the target area.

◆ setIsAgcPowerEnabled()

virtual void makRadarFx::DtSarRequest::setIsAgcPowerEnabled ( bool isAgcPowerEnabled)
virtual

Enables or disables Automatic Gain Control (AGC) for radar power.

Parameters
isAgcPowerEnabledTrue to enable AGC, false to disable

When enabled, Automatic Gain Control will dynamically adjust the radar power level to optimize the image quality based on the scene content. When disabled, the power level is fixed at the value set by setPower().

References isAgcPowerEnabled().

◆ isAgcPowerEnabled()

virtual bool makRadarFx::DtSarRequest::isAgcPowerEnabled ( ) const
virtual

Checks if Automatic Gain Control is enabled.

Returns
True if AGC is enabled, false if disabled

Returns the current state of the Automatic Gain Control setting.

Referenced by setIsAgcPowerEnabled().

◆ setPower()

virtual void makRadarFx::DtSarRequest::setPower ( float power)
virtual

Sets the radar system power level.

Parameters
powerRadar transmitter power in Watts

Sets the power level of the radar transmitter in Watts. Higher power levels generally result in better signal-to-noise ratio but may cause saturation for strong reflectors. This setting is only used when AGC is disabled.

References power().

◆ power()

virtual float makRadarFx::DtSarRequest::power ( )
virtual

Gets the radar system power level.

Returns
Radar transmitter power in Watts

Returns the currently set power level of the radar transmitter.

Referenced by setPower().

◆ setImageSize()

virtual void makRadarFx::DtSarRequest::setImageSize ( const DtImageSize & size)
virtual

Sets the requested image dimensions.

Parameters
sizeThe desired image dimensions in pixels

Sets the desired dimensions of the SAR image in pixels. The actual dimensions of the returned image may differ due to image rotation or other processing requirements.

Note
The default size is 512x512 pixels if not specified.

◆ imageSize()

virtual DtImageSize makRadarFx::DtSarRequest::imageSize ( )
virtual

Gets the requested image dimensions.

Returns
The currently set image dimensions in pixels

Returns the currently set dimensions for the SAR image.

◆ setImageFormat()

virtual void makRadarFx::DtSarRequest::setImageFormat ( DtImageFormat format)
virtual

Sets the requested image format.

Parameters
formatThe desired image format enumeration value

Sets the format to use for the returned SAR image data. Different formats have different characteristics in terms of compression, metadata support, and compatibility with various applications.

◆ imageFormat()

virtual DtImageFormat makRadarFx::DtSarRequest::imageFormat ( )
virtual

Gets the requested image format.

Returns
The currently set image format enumeration value

Returns the currently set format for the SAR image.

◆ setImageDataType()

virtual void makRadarFx::DtSarRequest::setImageDataType ( DtImageDataType type)
virtual

Sets the requested image data type.

Parameters
typeThe desired image data type enumeration value

Sets the data type to use for the pixel values in the returned SAR image. This setting is only applicable for RAW and NITF image formats. Different data types provide different dynamic range and precision.

◆ imageDataType()

virtual DtImageDataType makRadarFx::DtSarRequest::imageDataType ( )
virtual

Gets the requested image data type.

Returns
The currently set image data type enumeration value

Returns the currently set data type for the SAR image pixels.

◆ setImageRotation()

virtual void makRadarFx::DtSarRequest::setImageRotation ( DtImageRotation rotate)
virtual

Sets the requested image orientation.

Parameters
rotateThe desired image orientation enumeration value

Sets the orientation to use for the returned SAR image. The orientation determines whether north is at the top of the image (NORTH_UP) or the platform's direction of travel is at the top (TRACK_UP).

◆ imageRotation()

virtual DtImageRotation makRadarFx::DtSarRequest::imageRotation ( )
virtual

Gets the requested image orientation.

Returns
The currently set image orientation enumeration value

Returns the currently set orientation for the SAR image.

◆ setImageReturnMethod()

virtual void makRadarFx::DtSarRequest::setImageReturnMethod ( unsigned int returnFlags)
virtual

Sets the requested image delivery method.

Parameters
returnFlagsBitfield of DtImageReturnMethod values

Sets how the SAR image data should be delivered. This can be set to return the image data directly in the message (STREAM), save the image to a file and return the file path (FILESYSTEM), or both. Use bitwise OR to combine multiple flags.

◆ imageReturnMethod()

virtual unsigned int makRadarFx::DtSarRequest::imageReturnMethod ( )
virtual

Gets the requested image delivery method.

Returns
Bitfield of currently set delivery methods

Returns the currently set delivery method for the SAR image.

◆ setImageSavePath()

virtual void makRadarFx::DtSarRequest::setImageSavePath ( const std::string & filename)
virtual

Sets the directory path for saving the image on the server.

Parameters
filenamePath to the directory where the image should be saved

Sets the directory path where the image should be saved on the server when using the FILESYSTEM return method. If the specified directory does not exist, the server will attempt to create it.

Note
This setting is only used when the FILESYSTEM return method is selected.

◆ imageSavePath()

virtual std::string makRadarFx::DtSarRequest::imageSavePath ( )
virtual

Gets the image save directory path.

Returns
Path to the directory where the image will be saved

Returns the currently set directory path for saving the image.

◆ setImageFilename()

virtual void makRadarFx::DtSarRequest::setImageFilename ( const std::string & filename)
virtual

Sets the base filename for saving the image on the server.

Parameters
filenameBase name to use for the saved image file

Sets the base filename to use when saving the image on the server when using the FILESYSTEM return method. If not set, a timestamp will be used as the filename. If set, the specified name will be used as a prefix, followed by a timestamp. The file extension will be determined automatically based on the selected image format.

Note
This setting is only used when the FILESYSTEM return method is selected.

◆ imageFilename()

virtual std::string makRadarFx::DtSarRequest::imageFilename ( )
virtual

Gets the image base filename.

Returns
Base name that will be used for the saved image file

Returns the currently set base filename for saving the image.

◆ setRestoreState()

virtual void makRadarFx::DtSarRequest::setRestoreState ( bool restoreState)
virtual

Controls whether the server restores its state after image capture.

Parameters
restoreStateTrue to restore state, false otherwise

When set to true, this instructs the server to restore the display, window, and observer state after the SAR image capture process is completed. This is useful when the server needs to temporarily modify its state for image generation but should return to its previous state afterward.

References restoreState().

◆ restoreState()

virtual bool makRadarFx::DtSarRequest::restoreState ( )
virtual

Checks if state restoration is enabled.

Returns
True if state restoration is enabled, false otherwise

Returns whether the server will restore its state after image capture.

Referenced by setRestoreState().

◆ setOwnshipSpeed()

void makRadarFx::DtSarRequest::setOwnshipSpeed ( float speed)

Sets the platform speed for the SAR image request.

Parameters
speedSpeed of the platform in meters per second

Sets the speed of the platform (ownship) for the SAR image request. This affects the SAR processing parameters and can impact the quality of the resulting image. Only used when not using an entity as the host.

◆ ownshipSpeed()

float makRadarFx::DtSarRequest::ownshipSpeed ( )

Gets the platform speed.

Returns
Speed of the platform in meters per second

Returns the currently set speed of the platform (ownship).

◆ messageSize()

virtual int makRadarFx::DtSarRequest::messageSize ( )
virtual

size of the message

Reimplemented from makRadarFx::DtBaseMessage.

◆ decode()

static DtBaseMessage * makRadarFx::DtSarRequest::decode ( unsigned char * buffer,
int length )
static

decode a message. Used by the factory

◆ clone()

virtual DtBaseMessage * makRadarFx::DtSarRequest::clone ( )
virtual

clone a message. Caller of function is responsible managing this memory

Implements makRadarFx::DtBaseMessage.

◆ serialize()

virtual void makRadarFx::DtSarRequest::serialize ( DtStreamWriter & writer)
protectedvirtual

Serializes the message data to a stream writer.

Parameters
writerReference to the stream writer to write the data to

Writes the message data to the provided stream writer. Derived classes should call the base class implementation before adding their own fields.

Reimplemented from makRadarFx::DtBaseMessage.

◆ deserialize()

virtual void makRadarFx::DtSarRequest::deserialize ( DtStreamReader & reader)
protectedvirtual

Deserializes message data from a stream reader.

Parameters
readerReference to the stream reader to read the data from

Reads the message data from the provided stream reader. Derived classes should call the base class implementation before reading their own fields.

Reimplemented from makRadarFx::DtBaseMessage.

Member Data Documentation

◆ myUseObserverAsHost

bool makRadarFx::DtSarRequest::myUseObserverAsHost
protected

◆ myUseEntityAsHost

bool makRadarFx::DtSarRequest::myUseEntityAsHost
protected

◆ myUseAbsoluteOwnship

bool makRadarFx::DtSarRequest::myUseAbsoluteOwnship
protected

◆ myUseObserverForTarget

bool makRadarFx::DtSarRequest::myUseObserverForTarget
protected

◆ myUseEntityAsTarget

bool makRadarFx::DtSarRequest::myUseEntityAsTarget
protected

◆ myUseAbsoluteTarget

bool makRadarFx::DtSarRequest::myUseAbsoluteTarget
protected

◆ myIsAgcPowerEnabled

bool makRadarFx::DtSarRequest::myIsAgcPowerEnabled
protected

◆ myOwnshipName

std::string makRadarFx::DtSarRequest::myOwnshipName
protected

◆ myTargetName

std::string makRadarFx::DtSarRequest::myTargetName
protected

◆ myOwnshipLocation

DtVector makRadarFx::DtSarRequest::myOwnshipLocation
protected

◆ myTargetLocation

DtVector makRadarFx::DtSarRequest::myTargetLocation
protected

◆ myRadarOffsetLocation

DtVector makRadarFx::DtSarRequest::myRadarOffsetLocation
protected

◆ myRadarOffsetOrientation

DtTaitBryan makRadarFx::DtSarRequest::myRadarOffsetOrientation
protected

◆ myRadarName

std::string makRadarFx::DtSarRequest::myRadarName
protected

◆ myCrossrange

float makRadarFx::DtSarRequest::myCrossrange
protected

◆ myDownrange

float makRadarFx::DtSarRequest::myDownrange
protected

◆ myPower

float makRadarFx::DtSarRequest::myPower
protected

◆ myImageSize

DtImageSize makRadarFx::DtSarRequest::myImageSize
protected

◆ myImageFormat

DtImageFormat makRadarFx::DtSarRequest::myImageFormat
protected

◆ myImageDataType

DtImageDataType makRadarFx::DtSarRequest::myImageDataType
protected

◆ myImageRotation

DtImageRotation makRadarFx::DtSarRequest::myImageRotation
protected

◆ myReturnMethod

unsigned int makRadarFx::DtSarRequest::myReturnMethod
protected

◆ myRestoreState

bool makRadarFx::DtSarRequest::myRestoreState
protected

◆ myOwnshipSpeed

float makRadarFx::DtSarRequest::myOwnshipSpeed
protected

◆ myImageSavePath

std::string makRadarFx::DtSarRequest::myImageSavePath
protected

◆ myImageFilename

std::string makRadarFx::DtSarRequest::myImageFilename
protected

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