WSF
WsfL16::Messages::FieldBase< BIT_COUNT > Class Template Reference

#include <FieldTypes.hpp>

Inheritance diagram for WsfL16::Messages::FieldBase< BIT_COUNT >:
Collaboration diagram for WsfL16::Messages::FieldBase< BIT_COUNT >:

Public Types

typedef NoAccessorTypeTag accessor_type
typedef NoAccessorUnitsTag accessor_units
typedef FieldNoStatementInvalidTag no_statement_type
typedef NoEnumStringMapTag enum_map_type
typedef SmallIntType< BIT_COUNT >::integer_type value_type
 Use the smallest integer to hold the data.

Public Member Functions

 FieldBase ()
value_type GetRawData () const
template<class T>
value_type SafeCast (T aValue) const
void SetRawData (value_type aValue)

Static Public Attributes

static const unsigned int cFIELD_SIZE = BIT_COUNT
static const unsigned int cMID_VALUE = (1u << cFIELD_SIZE) / 2
static const unsigned int cMAX_VALUE = (1u << cFIELD_SIZE) - 1

Protected Member Functions

int DecodeTC (unsigned a2C) const
unsigned EncodeTC (int aInt) const
 Encode an integer into a N-bit two's compliment representation.
unsigned EncodeTCMod (int aInt) const

Protected Attributes

value_type mValue

Friends

MessageBitOutputoperator<< (MessageBitOutput &aAr, FieldBase< cFIELD_SIZE > &aField)
MessageBitInputoperator<< (MessageBitInput &aAr, FieldBase< cFIELD_SIZE > &aField)

Detailed Description

template<unsigned BIT_COUNT>
class WsfL16::Messages::FieldBase< BIT_COUNT >

A base class for all fields. The current maximum of bits is 31

Member Typedef Documentation

◆ accessor_type

template<unsigned BIT_COUNT>
typedef NoAccessorTypeTag WsfL16::Messages::FieldBase< BIT_COUNT >::accessor_type

◆ accessor_units

template<unsigned BIT_COUNT>
typedef NoAccessorUnitsTag WsfL16::Messages::FieldBase< BIT_COUNT >::accessor_units

◆ enum_map_type

template<unsigned BIT_COUNT>
typedef NoEnumStringMapTag WsfL16::Messages::FieldBase< BIT_COUNT >::enum_map_type

◆ no_statement_type

template<unsigned BIT_COUNT>
typedef FieldNoStatementInvalidTag WsfL16::Messages::FieldBase< BIT_COUNT >::no_statement_type

◆ value_type

template<unsigned BIT_COUNT>
typedef SmallIntType<BIT_COUNT>::integer_type WsfL16::Messages::FieldBase< BIT_COUNT >::value_type

Use the smallest integer to hold the data.

Constructor & Destructor Documentation

◆ FieldBase()

template<unsigned BIT_COUNT>
WsfL16::Messages::FieldBase< BIT_COUNT >::FieldBase ( )
inline

Member Function Documentation

◆ DecodeTC()

◆ EncodeTC()

template<unsigned BIT_COUNT>
unsigned WsfL16::Messages::FieldBase< BIT_COUNT >::EncodeTC ( int aInt) const
inlineprotected

Encode an integer into a N-bit two's compliment representation.

Referenced by WsfL16::Messages::ElevationAngle10Field::operator=(), and WsfL16::Messages::ElevationAngleField::SetDegrees().

◆ EncodeTCMod()

◆ GetRawData()

template<unsigned BIT_COUNT>
value_type WsfL16::Messages::FieldBase< BIT_COUNT >::GetRawData ( ) const
inline

◆ SafeCast()

◆ SetRawData()

template<unsigned BIT_COUNT>
void WsfL16::Messages::FieldBase< BIT_COUNT >::SetRawData ( value_type aValue)
inline

◆ operator<< [1/2]

template<unsigned BIT_COUNT>
MessageBitInput & operator<< ( MessageBitInput & aAr,
FieldBase< cFIELD_SIZE > & aField )
friend

◆ operator<< [2/2]

template<unsigned BIT_COUNT>
MessageBitOutput & operator<< ( MessageBitOutput & aAr,
FieldBase< cFIELD_SIZE > & aField )
friend

Member Data Documentation

◆ cFIELD_SIZE

template<unsigned BIT_COUNT>
const unsigned int WsfL16::Messages::FieldBase< BIT_COUNT >::cFIELD_SIZE = BIT_COUNT
static

◆ cMAX_VALUE

◆ cMID_VALUE

◆ mValue

template<unsigned BIT_COUNT>
value_type WsfL16::Messages::FieldBase< BIT_COUNT >::mValue
protected

Referenced by WsfL16::Messages::AltitudeField1< 18 >::GetAltitudeFeet(), WsfL16::Messages::AltitudeField< 11 >::GetAltitudeFeet(), WsfL16::Messages::Frequency13Field::GetChannelA(), WsfL16::Messages::Frequency13Field::GetChannelB(), WsfL16::Messages::AngleField16::GetDegrees(), WsfL16::Messages::AngleField::GetDegrees(), WsfL16::Messages::ElevationAngleField::GetDegrees(), WsfL16::Messages::DeltaElevationField::GetFeet(), WsfL16::Messages::ElevationField< 10 >::GetFeet(), WsfL16::Messages::LengthField::GetFeet(), WsfL16::Messages::FuelField::GetFuelPounds(), WsfL16::Messages::HourField::GetHour(), WsfL16::Messages::LetterField::GetLetter(), WsfL16::Messages::MultiplierField::GetMultiplier(), WsfL16::Messages::PRF_Field::GetPRF(), WsfL16::Messages::SpeedASW_Field::GetSpeedDataMiles(), WsfL16::Messages::SpeedField::GetSpeedDMPH(), WsfL16::Messages::J11_0::SpeedField< 8 >::GetSpeedKnots(), WsfL16::Messages::J11_0::TimeToInputLockoutField::GetTimeToLockout(), WsfL16::Messages::Frequency13Field::GetUHF_Frequency(), WsfL16::Messages::AirPlatformActivityField::GetValue(), WsfL16::Messages::AirPlatformField::GetValue(), WsfL16::Messages::IntegerField< 21 >::IntegerField(), WsfL16::Messages::ReceiptComplianceField::IsCANTPRO(), WsfL16::Messages::Frequency13Field::IsChannelGroupA(), WsfL16::Messages::Frequency13Field::IsChannelGroupB(), WsfL16::Messages::J12_6::StatusField::IsCommand(), WsfL16::Messages::TrackStrengthField::IsFewUnits(), WsfL16::Messages::TrackStrengthField::IsGreaterThan12(), WsfL16::Messages::PRF_Field::IsHigh(), WsfL16::Messages::Frequency13Field::IsIllegal(), WsfL16::Messages::AngleField16::IsIllegalValue(), WsfL16::Messages::J10_2::SecondTenthsField::IsIllegalValue(), WsfL16::Messages::SecondField::IsIllegalValue(), WsfL16::Messages::TransverseMercatorCoordinateField::IsInvalid(), WsfL16::Messages::TransverseMercatorGridCoordinateField::IsInvalid(), WsfL16::Messages::NetworkParticipationStatusField::IsInvalidValue(), WsfL16::Messages::TrackStrengthField::IsManyUnits(), WsfL16::Messages::FrequencyField::IsNoStatement(), WsfL16::Messages::value_type< BIT_COUNT, NO_STATEMENT_TAG >::IsNoStatement(), WsfL16::Messages::ReceiptComplianceField::IsOriginalOrder(), WsfL16::Messages::ReceiptComplianceField::IsResponse(), WsfL16::Messages::AltitudeField< 11 >::IsSkyObscured(), WsfL16::Messages::Frequency13Field::IsUHF_Frequency(), WsfL16::Messages::FireMethodField::IsUndefined(), WsfL16::Messages::LetterField::IsUndefined(), WsfL16::Messages::LetterNumberField::IsUndefined(), WsfL16::Messages::RadioStatusField::IsUndefined(), WsfL16::Messages::AltitudeField< 11 >::IsUnknown(), WsfL16::Messages::LetterNumberField::operator char(), WsfL16::Messages::TransverseMercatorGridCoordinateField::operator char(), WsfL16::Messages::AngleRateField::operator double(), WsfL16::Messages::AreaAxisLengthField::operator double(), WsfL16::Messages::AxisOrientationField::operator double(), WsfL16::Messages::BearingInterceptField::operator double(), WsfL16::Messages::DepthField::operator double(), WsfL16::Messages::ElevationAngle10Field::operator double(), WsfL16::Messages::EllipseOrientationOrTiltField::operator double(), WsfL16::Messages::FrequencyField::operator double(), WsfL16::Messages::J10_2::SecondTenthsField::operator double(), WsfL16::Messages::J11_0::TimeToGoField::operator double(), WsfL16::Messages::J11_0::VelocityField11::operator double(), WsfL16::Messages::J11_0::VelocityField8::operator double(), WsfL16::Messages::J11_0::VelocityField9::operator double(), WsfL16::Messages::J11_1::VelocityField12::operator double(), WsfL16::Messages::J11_1::VelocityField16::operator double(), WsfL16::Messages::J11_1::VelocityField8::operator double(), WsfL16::Messages::J11_1::VelocityField9::operator double(), WsfL16::Messages::J12_7::RangeField::operator double(), WsfL16::Messages::J3_0::Continuation3::SonobuoyBearingField::operator double(), WsfL16::Messages::J3_0::Continuation3::SonobuoySpacingField::operator double(), WsfL16::Messages::J3_6::PositionField::operator double(), WsfL16::Messages::J3_6::VelocityField::operator double(), WsfL16::Messages::LatitudeField< 21 >::operator double(), WsfL16::Messages::LongitudeField< 22 >::operator double(), WsfL16::Messages::PulseWidthField::operator double(), WsfL16::Messages::TransverseMercatorCoordinateField::operator double(), WsfL16::Messages::HundredthsField::operator int(), WsfL16::Messages::MinuteField::operator int(), WsfL16::Messages::Mode1CodeField::operator int(), WsfL16::Messages::TrackStrengthField::operator int(), WsfL16::Messages::IntegerField< 21 >::operator unsigned int(), WsfL16::Messages::IntegerFieldNS< 7, NoStatementMax >::operator unsigned int(), WsfL16::Messages::value_type< BIT_COUNT >::operator<<, WsfL16::Messages::value_type< BIT_COUNT >::operator<<, WsfL16::Messages::AngleRateField::operator=(), WsfL16::Messages::AreaAxisLengthField::operator=(), WsfL16::Messages::AxisOrientationField::operator=(), WsfL16::Messages::BearingInterceptField::operator=(), WsfL16::Messages::DepthField::operator=(), WsfL16::Messages::ElevationAngle10Field::operator=(), WsfL16::Messages::EllipseOrientationOrTiltField::operator=(), WsfL16::Messages::FrequencyField::operator=(), WsfL16::Messages::HundredthsField::operator=(), WsfL16::Messages::IntegerField< 21 >::operator=(), WsfL16::Messages::IntegerFieldNS< 7, NoStatementMax >::operator=(), WsfL16::Messages::J10_2::SecondTenthsField::operator=(), WsfL16::Messages::J11_0::TimeToGoField::operator=(), WsfL16::Messages::J11_0::VelocityField11::operator=(), WsfL16::Messages::J11_0::VelocityField8::operator=(), WsfL16::Messages::J11_0::VelocityField9::operator=(), WsfL16::Messages::J11_1::VelocityField12::operator=(), WsfL16::Messages::J11_1::VelocityField16::operator=(), WsfL16::Messages::J11_1::VelocityField8::operator=(), WsfL16::Messages::J11_1::VelocityField9::operator=(), WsfL16::Messages::J12_7::RangeField::operator=(), WsfL16::Messages::J3_0::Continuation3::SonobuoyBearingField::operator=(), WsfL16::Messages::J3_0::Continuation3::SonobuoySpacingField::operator=(), WsfL16::Messages::J3_6::PositionField::operator=(), WsfL16::Messages::J3_6::VelocityField::operator=(), WsfL16::Messages::LatitudeField< 21 >::operator=(), WsfL16::Messages::LetterNumberField::operator=(), WsfL16::Messages::LongitudeField< 22 >::operator=(), WsfL16::Messages::MinuteField::operator=(), WsfL16::Messages::Mode1CodeField::operator=(), WsfL16::Messages::PulseWidthField::operator=(), WsfL16::Messages::TrackStrengthField::operator=(), WsfL16::Messages::TransverseMercatorCoordinateField::operator=(), WsfL16::Messages::TransverseMercatorGridCoordinateField::operator=(), WsfL16::Messages::AltitudeField1< 18 >::SetAltitudeFeet(), WsfL16::Messages::AltitudeField< 11 >::SetAltitudeFeet(), WsfL16::Messages::Frequency13Field::SetChannelA(), WsfL16::Messages::Frequency13Field::SetChannelB(), WsfL16::Messages::AngleField16::SetDegrees(), WsfL16::Messages::AngleField::SetDegrees(), WsfL16::Messages::ElevationAngleField::SetDegrees(), WsfL16::Messages::DeltaElevationField::SetFeet(), WsfL16::Messages::ElevationField< 10 >::SetFeet(), WsfL16::Messages::LengthField::SetFeet(), WsfL16::Messages::FuelField::SetFuelPounds(), WsfL16::Messages::PRF_Field::SetHigh(), WsfL16::Messages::HourField::SetHour(), WsfL16::Messages::LetterField::SetLetter(), WsfL16::Messages::LetterField::SetLetter(), WsfL16::Messages::MultiplierField::SetMultiplier(), WsfL16::Messages::value_type< BIT_COUNT, NO_STATEMENT_TAG >::SetNoStatement(), WsfL16::Messages::PRF_Field::SetPRF(), WsfL16::Messages::SecondField::SetSecondToNow(), WsfL16::Messages::AltitudeField< 11 >::SetSkyObscured(), WsfL16::Messages::SpeedASW_Field::SetSpeedDataMiles(), WsfL16::Messages::SpeedField::SetSpeedDMPH(), WsfL16::Messages::J11_0::SpeedField< 8 >::SetSpeedKnots(), WsfL16::Messages::J11_0::TimeToInputLockoutField::SetTimeToLockout(), WsfL16::Messages::Frequency13Field::SetUHF_Frequency(), WsfL16::Messages::AltitudeField< 11 >::SetUnknown(), WsfL16::Messages::AirPlatformActivityField::SetValue(), and WsfL16::Messages::AirPlatformField::SetValue().


The documentation for this class was generated from the following file:
Copyrights Multiple, All Rights Reserved