AGX Dynamics 2.42.1.1
Loading...
Searching...
No Matches
Magnetometer.h
Go to the documentation of this file.
1/*
2Copyright 2007-2025. Algoryx Simulation AB.
3
4All AGX source code, intellectual property, documentation, sample code,
5tutorials, scene files and technical white papers, are copyrighted, proprietary
6and confidential material of Algoryx Simulation AB. You may not download, read,
7store, distribute, publish, copy or otherwise disseminate, use or expose this
8material unless having a written signed agreement with Algoryx Simulation AB, or having been
9advised so by Algoryx Simulation AB for a time limited evaluation, or having purchased a
10valid commercial license from Algoryx Simulation AB.
11
12Algoryx Simulation AB disclaims all responsibilities for loss or damage caused
13from using this software, unless otherwise stated in written agreements with
14Algoryx Simulation AB.
15*/
16#pragma once
21
22#include <agx/Frame.h>
23
24#include <agxSDK/Simulation.h>
25
26namespace agxSensor
27{
30
36 {
37 public:
44 static Magnetometer* find( const agxSDK::Simulation* simulation, const agx::Name& name );
45
52 static Magnetometer* find( const Environment* environment, const agx::Name& name );
53
61 const agx::Name& name );
62
69 static MagnetometerPtrVector findAll( const Environment* environment, const agx::Name& name );
70
77
83 static MagnetometerPtrVector findAll( const Environment* environment );
84
85 public:
96
102 virtual void setFrame( agx::Frame* frame ) override;
103
107 virtual agx::Frame* getFrame() const override;
108
113
118
123
125
126 public:
127 virtual void synchronizeGraphics(const agxRender::RenderManager& renderManager) override;
128 virtual void cleanup() override;
129
131
132 protected:
133 Magnetometer();
134
136
137 private:
138 agx::FrameRef m_frame;
139 MagnetometerModelRef m_model;
140 };
141}
#define AGX_DECLARE_POINTER_TYPES(type)
Definition: Referenced.h:254
#define AGXSTREAM_DECLARE_SERIALIZABLE(T)
Use this in a Serializable class to add the required methods Important: Use full namespace in the dec...
Definition: Serializable.h:207
#define AGXSENSOR_EXPORT
#define AGX_DECLARE_VECTOR_TYPES(type)
Definition: agx/Vector.h:34
Simulation is a class that bridges the collision space agxCollide::Space and the dynamic simulation s...
Definition: Simulation.h:131
Sensor environment implementation where different sensors collects data given a set of added objects,...
Common base type for all sensors attached to a frame of reference, such as that of a rigid body.
Common interface for sensor output handlers.
Base magnetometer model describing the fundamental parameters, such as measurement range and zero flu...
Handler responsible for how the magnetometer readings are assembled and provided to the user.
Magnetometer instance class defined by a frame/transform and a model.
Definition: Magnetometer.h:36
virtual void setFrame(agx::Frame *frame) override
Assign a new parent frame to attach this magnetometer to.
MagnetometerOutputHandler * getOutputHandler() const
virtual agx::Frame * getFrame() const override
static MagnetometerPtrVector findAll(const agxSDK::Simulation *simulation)
Find all magnetometers.
static Magnetometer * find(const agxSDK::Simulation *simulation, const agx::Name &name)
Find magnetometer given name.
static MagnetometerPtrVector findAll(const Environment *environment)
Find all magnetometers.
static MagnetometerPtrVector findAll(const agxSDK::Simulation *simulation, const agx::Name &name)
Find all magnetometers, given name.
virtual ISensorOutputHandler * getOutputHandlerBase() const override
Magnetometer(agx::Frame *frame, MagnetometerModel *model)
Construct this magnetometer attached to the given frame and configured by the model.
static MagnetometerPtrVector findAll(const Environment *environment, const agx::Name &name)
Find all magnetometers, given name.
static Magnetometer * find(const Environment *environment, const agx::Name &name)
Find magnetometer given name.
MagnetometerModel * getModel() const
The object defining a frame of reference and providing transformations operations.
Definition: agx/Frame.h:68
Representation of a name string.
Definition: Name.h:33
Vector containing 'raw' data.
Definition: agx/Vector.h:246
#define DOXYGEN_END_INTERNAL_BLOCK()
Definition: macros.h:89
#define DOXYGEN_START_INTERNAL_BLOCK()
Definition: macros.h:88
Namespace containing classes for handling debug rendering of collision geometries,...
Definition: Constraint.h:36
The agxSensor namespace contains components to model real-time sensors connected to the physics of AG...
The agx namespace contains the dynamics/math part of the AGX Dynamics API.