API Summary
A one-page index of every public type in ValleyLib, grouped by package, with links to the relevant guide.
valleyLib-core
com.vcs.valleylib.core.command
Type
Kind
Summary
Docs
Command
interface
The core behavior unit: lifecycle methods, getName/withName, decorator defaults
Commands
Commands
final class
Static factories: none, runOnce, run, startEnd, runEnd (each with optional Subsystem... requirements), waitSeconds, waitUntil, sequence, parallel, race, either, deadline
Command Groups
FunctionalCommand
class
Command assembled from lifecycle lambdas + requirements; the primitive behind the factories
Commands
InstantCommand
class
Runs an action once, finishes immediately
Commands
WaitCommand
class
Waits a fixed number of seconds
Commands
WaitUntilCommand
class
Finishes when a condition becomes true
Commands
BaseCommand
abstract class
Managed lifecycle template with justFinished() / wasInterrupted()
Commands
CommandWrapper
abstract class
Delegating base for building custom decorators
Commands
com.vcs.valleylib.core.command.decorators
Type
Summary
Docs
SequentialCommandGroup
Commands in order; ends when the last ends
Command Groups
ParallelCommandGroup
All together; ends when all end
Command Groups
RaceCommand
All together; ends when any ends
Command Groups
DeadlineCommand
All together; ends when the deadline ends
Command Groups
ConditionalCommand
Runs one of two commands based on a condition
Command Groups
TimeoutCommand
Interrupts the inner command after a duration (withTimeout)
Decorators
UntilCommand
Ends when a condition becomes true (until)
Decorators
OnlyWhileCommand
Runs only while a condition holds (onlyWhile)
Decorators
UnlessCommand
Skips the inner command if a condition is true (unless)
Decorators
BeforeStartingCommand
Runs an action before initialization (beforeStarting)
Decorators
FinallyCommand
Runs an action when the command ends (finallyDo)
Decorators
RepeatCommand
Restarts the inner command whenever it finishes (repeatedly)
Decorators
NamedCommand
Gives a command a readable name for logging (withName)
Commands
com.vcs.valleylib.core.scheduler
Type
Kind
Summary
Docs
CommandScheduler
singleton
Schedules/runs commands, enforces requirements, default commands, sim hooks, introspection (getScheduledCommands, requiring)
Scheduler
CommandSchedulerListener
interface
Observer for scheduled/finished/canceled events
Scheduler
com.vcs.valleylib.core.subsystem
Type
Kind
Summary
Docs
Subsystem
abstract class
Hardware unit base: periodic(), simulationPeriodic(), default commands, getName(), and requirement-carrying factories (runOnce, run, startEnd, runEnd, idle)
Subsystems
com.vcs.valleylib.core.time
Type
Kind
Summary
Docs
Clock
functional interface
long nanos() monotonic time source
Simulation & Testing
RobotClock
static holder
The library's time source: nanos/seconds/millis, setClock, useSystemClock
Simulation & Testing
ManualClock
class
A clock that moves only via advance/set — deterministic timing in tests
Simulation & Testing
com.vcs.valleylib.core.fsm
Type
Kind
Summary
Docs
StateMachine<S extends Enum<S>>
command
Enum-keyed finite state machine that runs as a command: per-state commands, onEnter/onExit hooks, condition/finish/timeout/global transitions, terminal states, transition listeners, forceState, allocation-free hot path
State Machines
StateMachine.TransitionListener<S>
functional interface
onTransition(from, to) observer for telemetry/logging
State Machines
com.vcs.valleylib.core.auto
Type
Kind
Summary
Docs
AutoDsl / AutoDsl.AutoBuilder
builder
Declarative autonomous sequences: command/add, run/doInstant, waitSeconds/waitFor, when, either/ifElse, parallel, race, deadline, marker
AutoDsl
valleyLib-ftc
com.vcs.valleylib.ftc
Type
Kind
Summary
Docs
RobotContainer
abstract class
Central home for subsystems, bindings, and the auto command
RobotContainer
com.vcs.valleylib.ftc.opmode
Type
Kind
Summary
Docs
CommandOpMode
abstract OpMode
Runs triggers + scheduler + telemetry each loop; safe shutdown
CommandOpMode
Type
Kind
Summary
Docs
CommandGamepad
class
FTC gamepad wrapper (Xbox layout) + forLogitechF310 / forDualShockLike presets
Gamepads
CommandXboxLike
class
Supplier-based base: all buttons incl. start/back/guide/stick clicks, PS aliases, deadband + curve shaping
Gamepads
GamepadEx
class
Backward-compatible alias for CommandGamepad
Gamepads
Trigger
class
Condition → command bindings (onTrue, whileTrue, toggleOnTrue, ...) + and/or/negate/debounce; implements BooleanSupplier; auto-registers on bind
Triggers
TriggerManager
class
Polled binding registry; getDefault() shared instance, bind, bindAll, poll, clear
Triggers
com.vcs.valleylib.ftc.hardware
Type
Kind
Summary
Docs
HardwareDevice
interface
disable(), getDeviceType()
Hardware
FtcSubsystem
abstract class
Subsystem + HardwareMap access
Subsystems
Motor
class
DcMotor wrapper: run modes, GoBILDA presets, encoder, PID+FF velocity/position control
Hardware
Motor.Encoder
inner class
Position/velocity/acceleration, distance-per-pulse, overflow correction
Hardware
Motor.GoBILDA / Motor.RunMode / Motor.Direction / Motor.ZeroPowerBehavior
enums
Motor specs and mode selectors
Hardware
MotorEx
class
DcMotorEx-backed motor with setVelocity (ticks/s or angular)
Hardware
MotorGroup
class
Leader/follower motor group; acts as a single Motor; iterable
Hardware
com.vcs.valleylib.ftc.control
Type
Kind
Summary
Docs
PIDFController
class
Full PIDF loop with tolerances, anti-windup, real-time dt
Control
PIDController
class
PIDF with kF = 0, plus setPID
Control
PDController
class
PID with kI = 0
Control
PController
class
PD with kD = 0
Control
wpilibcontroller.SimpleMotorFeedforward
class
ks·sgn(v) + kv·v + ka·a + achievable-velocity/accel helpers
Control
com.vcs.valleylib.ftc.command
Type
Kind
Summary
Docs
TimedCommand
abstract class
Fixed-duration command with onStart/onLoop/onEnd hooks
Commands
com.vcs.valleylib.ftc.telemetry / .logging
Type
Kind
Summary
Docs
FtcTelemetryBus
class
One put(...) → Driver Station + Panels; update(), clear()
Telemetry
FtcCommandLogger
class
Scheduler listener that logs lifecycle events to telemetry
Telemetry
com.vcs.valleylib.ftc.pedro
Type
Kind
Summary
Docs
PedroSubsystem
abstract class
Owns the Follower; auto-updates it in periodic(); command factories
Pedro
FollowPathCommand
class
Follows one Path; requires the drive subsystem; stops the follower when interrupted
Pedro
PedroCommands
final class
Static factories: follow, waitUntilIdle, followSequence
Pedro
PedroAutoDsl / .Builder
builder
Path-first autonomous DSL
PedroAutoDsl
FollowerState
final class
isIdle(follower) — the "is the drive done?" rule
Pedro
com.vcs.valleylib.ftc.samples
Type
Summary
Docs
SampleTeleOp, SimpleRobot, hardware.SampleDriveHardware, hardware.SampleIntakeHardware, auto.SampleAutos, auto.PedroMigrationSample
Copy-ready starter code
Samples