WPILibC++  unspecified
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Pages
Subsystem Class Reference
Inheritance diagram for Subsystem:
ErrorBase NamedSendable Sendable PIDSubsystem

Public Member Functions

 Subsystem (const std::string &name)
 Creates a subsystem with the given name. More...
 
void SetDefaultCommand (Command *command)
 Sets the default command. More...
 
CommandGetDefaultCommand ()
 Returns the default command (or null if there is none). More...
 
void SetCurrentCommand (Command *command)
 Sets the current command. More...
 
CommandGetCurrentCommand () const
 Returns the command which currently claims this subsystem. More...
 
virtual void InitDefaultCommand ()
 Initialize the default command for this subsystem This is meant to be the place to call SetDefaultCommand in a subsystem and will be called on all the subsystems by the CommandBase method before the program starts running by using the list of all registered Subsystems inside the Scheduler. More...
 
virtual std::string GetName () const
 
virtual void InitTable (std::shared_ptr< ITable > table)
 Initializes a table for this sendable object. More...
 
virtual std::shared_ptr< ITableGetTable () const
 
virtual std::string GetSmartDashboardType () const
 
- Public Member Functions inherited from ErrorBase
 ErrorBase (const ErrorBase &)=delete
 
ErrorBaseoperator= (const ErrorBase &)=delete
 
virtual ErrorGetError ()
 Retrieve the current error. More...
 
virtual const ErrorGetError () const
 
virtual void SetErrnoError (llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, uint32_t lineNumber) const
 Set error information associated with a C library call that set an error to the "errno" global variable. More...
 
virtual void SetImaqError (int success, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, uint32_t lineNumber) const
 Set the current error information associated from the nivision Imaq API. More...
 
virtual void SetError (Error::Code code, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, uint32_t lineNumber) const
 Set the current error information associated with this sensor. More...
 
virtual void SetWPIError (llvm::StringRef errorMessage, Error::Code code, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, uint32_t lineNumber) const
 Set the current error information associated with this sensor. More...
 
virtual void CloneError (const ErrorBase &rhs) const
 
virtual void ClearError () const
 Clear the current error information associated with this sensor.
 
virtual bool StatusIsFatal () const
 Check if the current error code represents a fatal error. More...
 

Protected Attributes

std::shared_ptr< ITablem_table
 
- Protected Attributes inherited from ErrorBase
Error m_error
 

Friends

class Scheduler
 

Additional Inherited Members

- Static Public Member Functions inherited from ErrorBase
static void SetGlobalError (Error::Code code, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, uint32_t lineNumber)
 
static void SetGlobalWPIError (llvm::StringRef errorMessage, llvm::StringRef contextMessage, llvm::StringRef filename, llvm::StringRef function, uint32_t lineNumber)
 
static ErrorGetGlobalError ()
 Retrieve the current global error.
 
- Static Protected Attributes inherited from ErrorBase
static priority_mutex _globalErrorMutex
 
static Error _globalError
 

Constructor & Destructor Documentation

Subsystem::Subsystem ( const std::string &  name)

Creates a subsystem with the given name.

Parameters
namethe name of the subsystem

Member Function Documentation

Command * Subsystem::GetCurrentCommand ( ) const

Returns the command which currently claims this subsystem.

Returns
the command which currently claims this subsystem
Command * Subsystem::GetDefaultCommand ( )

Returns the default command (or null if there is none).

Returns
the default command
std::string Subsystem::GetName ( ) const
virtual
Returns
the name of the subtable of SmartDashboard that the Sendable object will use

Implements NamedSendable.

std::string Subsystem::GetSmartDashboardType ( ) const
virtual
Returns
the string representation of the named data type that will be used by the smart dashboard for this sendable

Implements Sendable.

Reimplemented in PIDSubsystem.

std::shared_ptr< ITable > Subsystem::GetTable ( ) const
virtual
Returns
the table that is currently associated with the sendable

Implements Sendable.

void Subsystem::InitDefaultCommand ( )
virtual

Initialize the default command for this subsystem This is meant to be the place to call SetDefaultCommand in a subsystem and will be called on all the subsystems by the CommandBase method before the program starts running by using the list of all registered Subsystems inside the Scheduler.

This should be overridden by a Subsystem that has a default Command

void Subsystem::InitTable ( std::shared_ptr< ITable subtable)
virtual

Initializes a table for this sendable object.

Parameters
subtableThe table to put the values in.

Implements Sendable.

Reimplemented in PIDSubsystem.

void Subsystem::SetCurrentCommand ( Command command)

Sets the current command.

Parameters
commandthe new current command
void Subsystem::SetDefaultCommand ( Command command)

Sets the default command.

If this is not called or is called with null, then there will be no default command for the subsystem.

WARNING: This should NOT be called in a constructor if the subsystem is a singleton.

Parameters
commandthe default command (or null if there should be none)

The documentation for this class was generated from the following files: