2#include "Hardware/Headers/PositionSensor.h"
3#include "Design/Headers/StationModel.h"
4#include "Design/Headers/Deployment.h"
26 virtual StationModel* station()
const override {
return m_station; }
27 virtual bool requestStation(
const UUID& station)
override;
28 virtual Deployment* deployment()
const override {
return m_deployment; }
29 virtual bool requestDeployment(
const UUID& deployment)
override;
30 virtual void update()
override;
A core class where all Design Objects including models, materials, and geometries are stored.
uint04 index() const
Returns the primary row index of this object within the DesignObjectBase property table.
A core class that represents a node on model hierarchy.
bool m_use_station_prism_offset
Whether to apply the station prism offset.
void updatePrismOffset()
Updates the prism offset from the current station.
void setOrientationSensor(OrientationSensor *orientation)
Sets the orientation sensor used for tilt/heading compensation.
StationModel * m_station
The current station model.
Deployment * m_deployment
The current deployment context.
OptechScannerPositionSensor(DesignObjectLookup *manager, const Model &model, ProgressInfo *log, QObject *parent=nullptr)
Constructs the position sensor.
DesignObjectLookup * m_manager
The design object lookup.
void setDeployment(Deployment *deployment)
Sets the deployment context for station management.
void deleteStation()
Deletes the current station model.
void calculateAndAddSegment(fltp08 distance)
Calculates and adds a measurement segment at the given distance.
void calculateAndRemoveSegment(uint04 index)
Removes a measurement segment at the given index.
OrientationSensor * m_orientation_sensor
The orientation sensor for tilt/heading.
void setUseStationPrismOffset(bool use_prism_offset)
Enables or disables using the station prism offset for position calculation.
Forward declaration for design object lookup service.
PositionSensor(const Model &name, LogPtr log, QObject *parent=nullptr)
Constructs a PositionSensor with the given model, log, and optional parent.
Used with InfoPipe to signal that the system will be using progress.
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
The primary namespace for the NDEVR SDK.
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
double fltp08
Defines an alias representing an 8 byte floating-point number.