NDEVR
API Documentation
OptechPositionSensor.h
1#pragma once
2#include "Hardware/Headers/PositionSensor.h"
3#include "Design/Headers/StationModel.h"
4#include "Design/Headers/Deployment.h"
5namespace NDEVR
6{
8 class Deployment;
15 {
16 public:
22 OptechScannerPositionSensor(DesignObjectLookup* manager, const Model& model, ProgressInfo* log, QObject* parent = nullptr);
25 void setDeployment(Deployment* deployment);
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;
36 void setUseStationPrismOffset(bool use_prism_offset);
37 protected:
48 protected:
50 Deployment* m_deployment = nullptr;
53 StationModel* m_station;
54 };
55}
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.
Definition Model.h:292
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...
Definition UUID.h:61
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.