TinyURDF 1.0.0
Loading...
Searching...
No Matches
camera.h
Go to the documentation of this file.
1#ifndef INCLUDE_TINYURDF_CORE_CAMERA_H_
2#define INCLUDE_TINYURDF_CORE_CAMERA_H_
3
4// Copyright 2024 Wissem CHIHA
5
7#include "core/image.h"
8#include "core/pose.h"
9
14class Camera : public SensorBase<Image<double, 4>>
15{
16 public:
17 enum class Type
18 {
19 L8,
20 R8G8B8,
21 B8G8R8,
26 };
27 Camera();
28 Camera(const Camera& rhs);
29 void reset() override;
30 void update() override;
31 void getOrigin(double* xyz) const override;
32 void setType(Type t_);
33 void setType(const char* c);
34 void setHfov(double hfov_);
35 void setNear(double near_);
36 void setFar(double far_);
37 void setUpdateRate(double ur) override;
38 void getUpdateRate(double& ur) const override;
39 void setOrigin(std::shared_ptr<Pose> o) override;
40 const char* getTypename() const override;
41 bool empty() const override;
42 bool isA(const char* name) const override;
43 void clear() override;
44 void getRange(Image<double, 4>& r) override;
45 void setRange(Image<double, 4>& r) override;
46 void get(Image<double, 4>& o) const override;
47 void set(const std::shared_ptr<Image<double, 4>> mat);
48 std::string toString() const override;
49
50 private:
51 Type type;
52 std::shared_ptr<Pose> origin;
53 std::shared_ptr<Image<double, 4>> mat;
54 double hfov, near, far, update_rate;
55};
56#endif // INCLUDE_TINYURDF_CORE_CAMERA_H_
Base class for camera sensor definition.
Definition camera.h:15
Camera()
Definition camera.cc:3
bool empty() const override
Definition camera.cc:108
void setUpdateRate(double ur) override
Definition camera.cc:82
const char * getTypename() const override
Definition camera.cc:103
void update() override
Definition camera.cc:154
std::string toString() const override
Definition camera.cc:141
void getUpdateRate(double &ur) const override
Definition camera.cc:90
Type
Definition camera.h:18
void setHfov(double hfov_)
Definition camera.cc:63
void set(const std::shared_ptr< Image< double, 4 > > mat)
Definition camera.cc:134
void getRange(Image< double, 4 > &r) override
Definition camera.cc:119
bool isA(const char *name) const override
Definition camera.cc:112
void getOrigin(double *xyz) const override
Definition camera.cc:36
void setType(Type t_)
Definition camera.cc:45
void setFar(double far_)
Definition camera.cc:76
void setOrigin(std::shared_ptr< Pose > o) override
Definition camera.cc:95
void get(Image< double, 4 > &o) const override
Definition camera.cc:129
void clear() override
Definition camera.cc:116
void reset() override
Definition camera.cc:25
void setNear(double near_)
Definition camera.cc:69
void setRange(Image< double, 4 > &r) override
Definition camera.cc:124
base image class definition
Definition image.h:18
Base class for all sensors.
Definition sensor_base.h:26