RIT VEXU Core API
Toggle main menu visibility
Loading...
Searching...
No Matches
builtins.hpp
1
#pragma once
2
#include "core/device/vdb/types.hpp"
3
#include "core/subsystems/odometry/odometry_base.h"
4
#include <Eigen/Dense>
5
#include <memory>
6
7
#include "vex.h"
8
#include <string>
9
namespace
VDP {
13
class
TimestampedRecord
:
public
Record
{
14
public
:
22
TimestampedRecord
(std::string name,
Part
*data);
26
void
fetch
();
27
28
private
:
29
std::shared_ptr<Float> timestamp;
30
PartPtr data;
31
};
32
35
class
MotorDataRecord
:
public
Record
{
36
public
:
47
MotorDataRecord
(std::string name, vex::motor &mot);
51
void
fetch
()
override
;
52
53
private
:
54
vex::motor &mot;
55
56
std::shared_ptr<Float> pos;
57
std::shared_ptr<Float> vel;
58
std::shared_ptr<Float> temp;
59
std::shared_ptr<Float> voltage;
60
std::shared_ptr<Float> current;
61
};
62
65
class
OdometryDataRecord
:
public
Record
{
66
public
:
75
OdometryDataRecord
(std::string name,
OdometryBase
&odom);
79
void
fetch
()
override
;
80
81
private
:
82
OdometryBase
&odom;
83
84
std::shared_ptr<Float> X;
85
std::shared_ptr<Float> Y;
86
std::shared_ptr<Float> ROT;
87
};
88
92
class
OdometryControlRecord
:
public
Record
{
93
public
:
99
OdometryControlRecord
(std::string name,
OdometryBase
&odom);
103
void
response
()
override
;
104
105
private
:
106
OdometryBase
&odom;
107
108
std::shared_ptr<Float> X;
109
std::shared_ptr<Float> Y;
110
std::shared_ptr<Float> ROT;
111
};
112
116
class
PIDDataRecord
:
public
Record
{
117
public
:
129
PIDDataRecord
(std::string name,
PID
&pid);
133
void
fetch
()
override
;
134
135
private
:
136
PID
&pid;
137
138
std::shared_ptr<Float> P;
139
std::shared_ptr<Float> I;
140
std::shared_ptr<Float> D;
141
std::shared_ptr<Float> ERROR;
142
std::shared_ptr<Float> OUTPUT;
143
std::shared_ptr<String> TYPE;
144
};
145
148
class
PIDControlRecord
:
public
Record
{
149
public
:
155
PIDControlRecord
(std::string name,
PID
&pid);
159
void
response
()
override
;
160
161
private
:
162
PID
&pid;
163
164
std::shared_ptr<Float> P;
165
std::shared_ptr<Float> I;
166
std::shared_ptr<Float> D;
167
};
168
172
class
TestRecord
:
public
Record
{
173
public
:
177
TestRecord
(std::string name,
double
test_float, int64_t test_int64);
178
void
response()
override
;
179
void
fetch
()
override
;
180
181
private
:
182
double
test_float;
183
int64_t test_int64;
184
185
std::shared_ptr<Float> test_float_ptr;
186
std::shared_ptr<Int64> test_int64_ptr;
187
};
188
}
// namespace VDP
OdometryBase
Definition
odometry_base.h:31
PID
Definition
pid.h:23
VDP::MotorDataRecord::fetch
void fetch() override
Definition
builtins.cpp:49
VDP::MotorDataRecord::MotorDataRecord
MotorDataRecord(std::string name, vex::motor &mot)
Definition
builtins.cpp:41
VDP::OdometryControlRecord::response
void response() override
Definition
builtins.cpp:88
VDP::OdometryControlRecord::OdometryControlRecord
OdometryControlRecord(std::string name, OdometryBase &odom)
Definition
builtins.cpp:81
VDP::OdometryDataRecord::fetch
void fetch() override
Definition
builtins.cpp:71
VDP::OdometryDataRecord::OdometryDataRecord
OdometryDataRecord(std::string name, OdometryBase &odom)
Definition
builtins.cpp:64
VDP::PIDControlRecord::response
void response() override
Definition
builtins.cpp:131
VDP::PIDControlRecord::PIDControlRecord
PIDControlRecord(std::string name, PID &pid)
Definition
builtins.cpp:124
VDP::PIDDataRecord::PIDDataRecord
PIDDataRecord(std::string name, PID &pid)
Definition
builtins.cpp:101
VDP::PIDDataRecord::fetch
void fetch() override
Definition
builtins.cpp:109
VDP::Part
Definition
protocol.hpp:154
VDP::Record::Record
Record(std::string name)
Definition
types.cpp:8
VDP::Record::fetch
void fetch() override
Definition
types.cpp:63
VDP::TestRecord::TestRecord
TestRecord(std::string name, double test_float, int64_t test_int64)
Definition
builtins.cpp:139
VDP::TimestampedRecord::fetch
void fetch()
Definition
builtins.cpp:27
VDP::TimestampedRecord::TimestampedRecord
TimestampedRecord(std::string name, Part *data)
Definition
builtins.cpp:20
include
core
device
vdb
builtins.hpp
Generated by
1.17.0