CTRE_Phoenix 5.20.2
CANdle.h
1#pragma once
2
3#include "ctre/phoenix/led/Animation.h"
4#include "ctre/phoenix/led/BaseStandardAnimation.h"
5#include "ctre/phoenix/led/BaseTwoSizeAnimation.h"
6#include "ctre/phoenix/led/CANdleFaults.h"
7#include "ctre/phoenix/led/CANdleStatusFrame.h"
8#include "ctre/phoenix/led/CANdleControlFrame.h"
9#include "ctre/phoenix/led/CANdleConfiguration.h"
10#include "ctre/phoenix/led/CANdleConfigUtil.h"
11#include "ctre/phoenix/led/CANdleLedStripType.h"
12#include "ctre/phoenix/led/VBatOutputMode.h"
13#include "ctre/phoenix/cci/CANdle_CCI.h"
14#include "ctre/phoenix/paramEnum.h"
15#include "ctre/phoenix/ErrorCode.h"
16
17namespace ctre{ namespace phoenix{ namespace led{
18
49class CANdle {
50private:
51 void *_handle;
52
53public:
54
61 CANdle(int deviceId, std::string const &canbus = "");
62 ~CANdle();
63
68 double GetBusVoltage();
78 double GetCurrent();
92
101
104
115 ctre::phoenix::ErrorCode SetLEDs(int r, int g, int b, int w = 0, int startIdx = 0, int count = 512);
116
123 ErrorCode ModulateVBatOutput(double dutyCyclePrcnt);
124
134 ErrorCode ConfigLOSBehavior(bool disableWhenLOS, int timeoutMs = 0);
144 ErrorCode ConfigLEDType(LEDStripType type, int timeoutMs = 0);
165 ErrorCode ConfigBrightnessScalar(double brightness, int timeoutMs = 0);
166
177 ErrorCode ConfigStatusLedState(bool disableWhenRunning, int timeoutMs = 0);
187 ErrorCode ConfigVBatOutput(VBatOutputMode mode, int timeoutMs = 0);
188
206 double ConfigGetParameter(ParamEnum param, int ordinal, int timeoutMs = 0);
228 ErrorCode ConfigSetParameter(ParamEnum param, double value, int subValue = 0, int ordinal = 0, int timeoutMs = 0);
244 int ConfigGetCustomParam(int paramIndex, int timeoutMs = 0);
262 ErrorCode ConfigSetCustomParam(int paramIndex, int value, int timeoutMs = 0);
273 ErrorCode ConfigFactoryDefault(int timeoutMs = 50);
297 ErrorCode ClearStickyFaults(int timeoutMs = 0);
317 ErrorCode SetStatusFramePeriod(CANdleStatusFrame frame, int periodMs, int timeoutMs = 0);
329 int GetStatusFramePeriod(CANdleStatusFrame frame, int timeoutMs = 0);
339 ErrorCode SetControlFramePeriod(CANdleControlFrame frame, int periodMs);
340
351 ErrorCode ConfigAllSettings(CANdleConfiguration allConfigs, int timeoutMs = 50);
361 void GetAllConfigs(CANdleConfiguration allConfigs, int timeoutMs = 50);
362
373};
374
375} // namespace led
376} // namespace phoenix
377} // namespace ctre
378
Definition: Animation.h:13
Definition: BaseStandardAnimation.h:11
Definition: BaseTwoSizeAnimation.h:11
Definition: CANdle.h:49
ErrorCode GetStickyFaults(CANdleStickyFaults &toFill)
ErrorCode ClearStickyFaults(int timeoutMs=0)
ErrorCode ConfigLOSBehavior(bool disableWhenLOS, int timeoutMs=0)
ErrorCode ConfigSetCustomParam(int paramIndex, int value, int timeoutMs=0)
int ConfigGetCustomParam(int paramIndex, int timeoutMs=0)
ErrorCode ConfigVBatOutput(VBatOutputMode mode, int timeoutMs=0)
ErrorCode SetStatusFramePeriod(CANdleStatusFrame frame, int periodMs, int timeoutMs=0)
ErrorCode ConfigAllSettings(CANdleConfiguration allConfigs, int timeoutMs=50)
ErrorCode ConfigSetParameter(ParamEnum param, double value, int subValue=0, int ordinal=0, int timeoutMs=0)
ErrorCode ConfigLEDType(LEDStripType type, int timeoutMs=0)
ErrorCode ConfigFactoryDefault(int timeoutMs=50)
ErrorCode GetFaults(CANdleFaults &toFill)
ErrorCode ModulateVBatOutput(double dutyCyclePrcnt)
int GetStatusFramePeriod(CANdleStatusFrame frame, int timeoutMs=0)
void GetAllConfigs(CANdleConfiguration allConfigs, int timeoutMs=50)
ErrorCode ConfigBrightnessScalar(double brightness, int timeoutMs=0)
ctre::phoenix::ErrorCode SetLEDs(int r, int g, int b, int w=0, int startIdx=0, int count=512)
ErrorCode SetControlFramePeriod(CANdleControlFrame frame, int periodMs)
CANdle(int deviceId, std::string const &canbus="")
ErrorCode ConfigStatusLedState(bool disableWhenRunning, int timeoutMs=0)
double ConfigGetParameter(ParamEnum param, int ordinal, int timeoutMs=0)
ctre::phoenix::ErrorCode Animate(Animation &animation)
ParamEnum
Definition: paramEnum.h:12
ErrorCode
Definition: ErrorCode.h:12
Definition: ErrorCode.h:5
Definition: CANdleConfiguration.h:13
Definition: CANdleFaults.h:12
Definition: CANdleFaults.h:115