50 [[nodiscard]] std::string
type()
const override;
53 [[nodiscard]]
static std::string
category();
60 [[nodiscard]]
json save()
const override;
116 std::shared_ptr<const ImuObsWDelta>
convert2ImuObsWDelta(
const std::shared_ptr<const VectorNavBinaryOutput>& vnObs)
const;
121 std::shared_ptr<const ImuObs>
convert2ImuObs(
const std::shared_ptr<const VectorNavBinaryOutput>& vnObs)
const;
126 std::shared_ptr<const BaroPressObs>
convert2BaroPressObs(
const std::shared_ptr<const VectorNavBinaryOutput>& vnObs)
const;
131 std::shared_ptr<const PosVelAtt>
convert2PosVelAtt(
const std::shared_ptr<const VectorNavBinaryOutput>& vnObs);
136 static std::shared_ptr<const GnssObs>
convert2GnssObs(
const std::shared_ptr<const VectorNavBinaryOutput>& vnObs);
Barometric Pressure Storage Class.
nlohmann::json json
json namespace
GNSS Observation messages.
Data storage class for one VectorNavImu observation.
Position, Velocity and Attitude Storage Class.
Binary Outputs from VectorNav Sensors.
Node(std::string name)
Constructor.
VectorNavBinaryConverter()
Default constructor.
VectorNavBinaryConverter & operator=(const VectorNavBinaryConverter &)=delete
Copy assignment operator.
VectorNavBinaryConverter(const VectorNavBinaryConverter &)=delete
Copy constructor.
static std::shared_ptr< const GnssObs > convert2GnssObs(const std::shared_ptr< const VectorNavBinaryOutput > &vnObs)
Converts the VectorNavBinaryOutput to a GnssObs observation.
std::shared_ptr< const ImuObs > convert2ImuObs(const std::shared_ptr< const VectorNavBinaryOutput > &vnObs) const
Converts the VectorNavBinaryOutput to a ImuObs observation.
OutputType _outputType
The selected output type in the GUI.
std::shared_ptr< const PosVelAtt > convert2PosVelAtt(const std::shared_ptr< const VectorNavBinaryOutput > &vnObs)
Converts the VectorNavBinaryOutput to a PosVelAtt observation.
VectorNavBinaryConverter & operator=(VectorNavBinaryConverter &&)=delete
Move assignment operator.
OutputType
Enum specifying the type of the output message.
@ ImuObsWDelta
Extract ImuObsWDelta data.
@ GnssObs
Extract GnssObs data.
@ COUNT
Number of items in the enum.
@ PosVelAtt
Extract PosVelAtt data.
@ BaroPressObs
Extract BaroPressObs data.
@ ImuObs
Extract ImuObs data.
void receiveObs(InputPin::NodeDataQueue &queue, size_t pinIdx)
Converts the VectorNavBinaryOutput observation to the selected message type.
static constexpr size_t OUTPUT_PORT_INDEX_CONVERTED
Flow.
static std::string category()
String representation of the Class Category.
std::shared_ptr< const PosVelAtt > _posVelAtt__init
Position, Velocity and Attitude at initialization (needed for static data)
void restore(const json &j) override
Restores the node from a json object.
static std::string typeStatic()
String representation of the Class Type.
std::shared_ptr< const ImuObsWDelta > convert2ImuObsWDelta(const std::shared_ptr< const VectorNavBinaryOutput > &vnObs) const
Converts the VectorNavBinaryOutput to a ImuObsWDelta observation.
json save() const override
Saves the node into a json object.
static constexpr size_t INPUT_PORT_INDEX_VECTORNAV_BINARY_OUTPUT
Flow (VectorNavBinaryOutput)
std::shared_ptr< const BaroPressObs > convert2BaroPressObs(const std::shared_ptr< const VectorNavBinaryOutput > &vnObs) const
Converts the VectorNavBinaryOutput to a BaroPressObs observation.
~VectorNavBinaryConverter() override
Destructor.
PosVelSource _posVelSource
The selected PosVel source in the GUI.
std::string type() const override
String representation of the Class Type.
bool _forceStatic
GUI option. If checked forces position to a static value and velocity to 0.
bool _useCompensatedData
Whether to extract the compensated data or the uncompensated.
bool initialize() override
Initialize the node.
VectorNavBinaryConverter(VectorNavBinaryConverter &&)=delete
Move constructor.
void guiConfig() override
ImGui config window which is shown on double click.
PosVelSource
Enum specifying the source for the PosVelAtt conversion.
@ PosVelSource_Best
INS > GNSS1 > GNSS2.
@ PosVelSource_Gnss2
Take only GNSS2 values into account.
@ PosVelSource_Gnss1
Take only GNSS1 values into account.
@ PosVelSource_Ins
Take only INS values into account.
const char * to_string(gui::widgets::PositionWithFrame::ReferenceFrame refFrame)
Converts the enum to a string.