| CVDP::AbstractDevice | |
| CAsync | Async runs a command asynchronously will simply let it go and never look back THIS HAS A VERY NICHE USE CASE. THINK ABOUT IF YOU REALLY NEED IT |
| CBasicSolenoidSet | |
| CBasicSpinCommand | |
| CBasicStopCommand | |
| CBranch | Branch chooses from multiple options at runtime. the function decider returns an index into the choices vector If you wish to make no choice and skip this section, return NO_CHOICE; any choice that is out of bounds set to NO_CHOICE |
| Cscreen::ButtonWidget | Widget that does something when you tap it. The function is only called once when you first tap it |
| CCommandController | |
| ►CCondition | |
| CFunctionCondition | FunctionCondition is a quick and dirty Condition to wrap some expression that should be evaluated at runtime |
| CIfTimePassed | IfTimePassed tests based on time since the command controller was constructed. Returns true if elapsed time > time_s |
| CCRC32 | A class for calculating the CRC32 checksum from arbitrary data |
| CCustomEncoder | |
| CDelayCommand | |
| CDriveForwardCommand | |
| CDriveStopCommand | |
| CDriveToPointCommand | |
| CAutoChooser::entry_t | |
| ►CFeedback | |
| CMotionController | |
| CPID | |
| CTakeBackHalf | A velocity controller |
| CFeedForward | |
| CFeedForward::ff_config_t | |
| ►CFilter | |
| CExponentialMovingAverage | |
| CMovingAverage | |
| CFlywheel | |
| CFlywheelStopCommand | |
| CFlywheelStopMotorsCommand | |
| CFlywheelStopNonTasksCommand | |
| CFunctionCommand | |
| CGenericAuto | |
| CPurePursuit::hermite_point | |
| CInOrder | InOrder runs its commands sequentially then continues. How to handle timeout in this case. Automatically set it to sum of commands timouts? |
| CInterpolatingMap< KEY, VALUE > | |
| CKalmanFilter< STATES, INPUTS, OUTPUTS > | |
| CLift< T > | |
| CLift< T >::lift_cfg_t | |
| CLinearPlantInversionFeedforward< STATES, INPUTS > | |
| CLinearQuadraticRegulator< STATES, INPUTS > | |
| CLinearSystem< STATES, INPUTS, OUTPUTS > | |
| CLogger | Class to simplify writing to files |
| CMotionController::m_profile_cfg_t | |
| CStateMachine< System, IDType, Message, delay_ms, do_log >::MaybeMessage | MaybeMessage a message of Message type or nothing MaybeMessage m = {}; // empty MaybeMessage m = Message::EnumField1 |
| CMecanumDrive | |
| CMecanumDrive::mecanumdrive_config_t | |
| COdometry3Wheel::odometry3wheel_cfg_t | |
| ►COdometryBase | |
| COdometry3Wheel | |
| COdometrySerial | |
| COdometryTank | |
| COdomSetPosition | |
| CVDP::PacketHeader | |
| CVDP::PacketWriter | |
| ►Cscreen::Page | Page describes one part of the screen slideshow |
| CAutoChooser | |
| Cscreen::FunctionPage | Simple page that stores no internal data. the draw and update functions use only global data rather than storing anything |
| Cscreen::OdometryPage | Page that shows odometry position and rotation and a map (if an sd card with the file is on) |
| Cscreen::PIDPage | PIDPage provides a way to tune a pid controller on the screen |
| Cscreen::StatsPage | Draws motor stats and battery stats to the screen |
| CParallel | Parallel runs multiple commands in parallel and waits for all to finish before continuing. if none finish before this command's timeout, it will call on_timeout on all children continue |
| ►CVDP::Part | |
| CVDP::Number< float, Type::Float > | |
| CVDP::Number< double, Type::Double > | |
| CVDP::Number< uint8_t, Type::Uint8 > | |
| CVDP::Number< uint16_t, Type::Uint16 > | |
| CVDP::Number< uint32_t, Type::Uint32 > | |
| CVDP::Number< uint64_t, Type::Uint64 > | |
| CVDP::Number< int8_t, Type::Int8 > | |
| CVDP::Number< int16_t, Type::Int16 > | |
| CVDP::Number< int32_t, Type::Int32 > | |
| CVDP::Number< int64_t, Type::Int64 > | |
| CVDP::Number< NumT, schemaType > | |
| ►CVDP::Record | |
| CVDP::MotorDataRecord | |
| CVDP::OdometryControlRecord | |
| CVDP::OdometryDataRecord | |
| CVDP::PIDControlRecord | |
| CVDP::PIDDataRecord | |
| CVDP::TestRecord | |
| CVDP::TimestampedRecord | |
| CVDP::String | |
| CPurePursuit::Path | |
| CPID::pid_config_t | |
| CPose2d | |
| CPurePursuitCommand | |
| CRect | |
| CVDP::RegistryListener< MutexType > | |
| Crobot_specs_t | |
| CRotation2d | |
| CScaledSphericalSimplexSigmaPoints< STATES > | |
| Cscreen::ScreenData | Holds the data that will be passed to the screen thread you probably shouldnt have to use it |
| CSerializer | Serializes Arbitrary data to a file on the SD Card |
| Cscreen::SliderWidget | Widget that updates a double value. Updates by reference so watch out for race conditions cuz the screen stuff lives on another thread |
| CSpinRPMCommand | |
| CPurePursuit::spline | |
| CStateMachine< System, IDType, Message, delay_ms, do_log >::State | |
| CStateMachine< System, IDType, Message, delay_ms, do_log > | State Machine :)))))) A fun fun way of controlling stateful subsystems - used in the 2023-2024 Over Under game for our overly complex intake-cata subsystem (see there for an example) The statemachine runs in a background thread and a user thread can interact with it through current_state and send_message |
| CTankDrive | |
| Ctracking_wheel_cfg_t | |
| CTransform2d | |
| CTranslation2d | |
| CTrapezoidProfile | |
| CTurnDegreesCommand | |
| CTurnToHeadingCommand | |
| CTwist2d | |
| CUnscentedKalmanFilter< STATES, INPUTS, OUTPUTS > | |
| ►CVDP::Visitor | |
| CResponsePacketVisitor | |
| CVDP::UpcastNumbersVisitor | |
| CWaitUntilCondition | Waits until the condition is true |
| CWaitUntilUpToSpeedCommand | |