Open FFBoard
Open source force feedback firmware
CustomMain Class Reference

#include <CustomMain.h>

Inheritance diagram for CustomMain:
FFBoardMain ChoosableClass CommandHandler

Public Member Functions

 CustomMain ()
 
virtual ~CustomMain ()
 
const ClassIdentifier getInfo ()
 
CommandStatus command (const ParsedCommand &cmd, std::vector< CommandReply > &replies)
 
void registerCommands ()
 
std::string getHelpstring ()
 
- Public Member Functions inherited from FFBoardMain
const ClassType getClassType () override
 returns the used classchooser selection id of this instance More...
 
 FFBoardMain ()
 
virtual ~FFBoardMain ()
 
virtual void usbInit ()
 
virtual void update ()
 
virtual void cdcRcv (char *Buf, uint32_t *Len)
 
virtual void cdcRcvReady (uint8_t itf)
 
virtual void usbSuspend ()
 
virtual void usbResume ()
 
- Public Member Functions inherited from ChoosableClass
virtual ~ChoosableClass ()
 
uint16_t getSelectionID ()
 
- Public Member Functions inherited from CommandHandler
 CommandHandler (const char *clsname, uint16_t clsid, uint8_t instance=0)
 
virtual ~CommandHandler ()
 
virtual bool hasCommands ()
 
virtual void setCommandsEnabled (bool enable)
 
void registerCommands ()
 
virtual CommandStatus internalCommand (const ParsedCommand &cmd, std::vector< CommandReply > &replies)
 
virtual std::string getCommandsHelpstring ()
 
virtual std::string getCsvHelpstring ()
 
virtual uint8_t getCommandHandlerInstance ()
 
void broadcastCommandReply (CommandReply reply, uint32_t cmdId, CMDtype type)
 
void sendCommandReplyAsync (CommandReply reply, uint32_t cmdId, CMDtype type, CommandInterface *interface=nullptr)
 
virtual uint16_t getCommandHandlerID ()
 
virtual CmdHandlerInfogetCommandHandlerInfo ()
 
virtual bool isValidCommandId (uint32_t cmdid, uint32_t ignoredFlags=0, uint32_t requiredFlag=0)
 
virtual CmdHandlerCommanddefgetCommandFromName (const std::string &cmd, uint32_t ignoredFlags=0)
 
virtual CmdHandlerCommanddefgetCommandFromId (const uint32_t id, uint32_t ignoredFlags=0)
 
template<typename ID >
void registerCommand (const char *cmd, const ID cmdid, const char *help=nullptr, uint32_t flags=0)
 

Static Public Attributes

static ClassIdentifier info
 
- Static Public Attributes inherited from FFBoardMain
static ClassIdentifier info ={.name = "Basic (Failsafe)" ,.id=0}
 
- Static Public Attributes inherited from ChoosableClass
static ClassIdentifier info
 
- Static Public Attributes inherited from CommandHandler
static bool logEnabled = true
 

Private Types

enum class  CustomMain_commands : uint32_t { command =0 }
 

Private Attributes

int32_t examplevar = 0
 

Additional Inherited Members

- Static Public Member Functions inherited from FFBoardMain
static bool isCreatable ()
 
- Static Public Member Functions inherited from ChoosableClass
static bool isCreatable ()
 
- Static Public Member Functions inherited from CommandHandler
static void logSerial (std::string string)
 Send a log formatted sequence. More...
 
static void logSerialDebug (std::string string)
 Send a log formatted sequence if debug is on. More...
 
static bool logsEnabled ()
 
static void setLogsEnabled (bool enabled)
 
static uint32_t getClassIdFromName (const char *name)
 
static const char * getClassNameFromId (const uint32_t id)
 
static CommandHandlergetHandlerFromHandlerId (const uint16_t cmdhandlerID)
 
static CommandHandlergetHandlerFromId (const uint16_t id, const uint8_t instance=0xFF)
 
static CommandHandlergetHandlerFromClassName (const char *name, const uint8_t instance=0xFF)
 
static std::vector< CommandHandler * > getHandlersFromClassName (const char *name)
 
static std::vector< CommandHandler * > getHandlersFromId (const uint16_t id)
 
static bool isInHandlerList (CommandHandler *handler)
 
static std::string getAllHelpstrings ()
 
static std::vector< CommandHandler * > & getCommandHandlers ()
 
template<typename TVal >
static CommandStatus handleGetSet (const ParsedCommand &cmd, std::vector< CommandReply > &replies, TVal &value)
 
template<typename TVal , class cls , class cls1 >
static CommandStatus handleGetSetFunc (const ParsedCommand &cmd, std::vector< CommandReply > &replies, TVal &value, void(cls1::*setfunc)(TVal), cls *obj)
 
template<typename TVal , class cls , class cls1 , class cls2 >
static CommandStatus handleGetFuncSetFunc (const ParsedCommand &cmd, std::vector< CommandReply > &replies, TVal(cls1::*getfunc)(), void(cls2::*setfunc)(TVal), cls *obj)
 
template<typename TVal , class cls , class cls1 >
static CommandStatus handleGetFuncSet (const ParsedCommand &cmd, std::vector< CommandReply > &replies, TVal &value, TVal(cls1::*getfunc)(), cls *obj)
 
- Public Attributes inherited from FFBoardMain
std::unique_ptr< FFBoardMainCommandThreadcommandThread
 
std::unique_ptr< CDC_CommandInterfacecdcCmdInterface = std::make_unique<CDC_CommandInterface>()
 
ErrorPrinter errorPrinter
 
SystemCommands systemCommands
 System command handler. More...
 
std::unique_ptr< UART_CommandInterfaceuartCmdInterface = std::make_unique<UART_CommandInterface>(115200)
 
- Protected Member Functions inherited from CommandHandler
void setInstance (uint8_t instance)
 
virtual void addCommandHandler ()
 
virtual void removeCommandHandler ()
 
- Static Protected Member Functions inherited from CommandHandler
static std::vector< uint16_t > & getCommandHandlerIds ()
 
- Protected Attributes inherited from FFBoardMain
std::unique_ptr< USBdeviceusbdev
 
- Protected Attributes inherited from ChoosableClass
uint16_t selectionId
 Should only be written by ClassChooser during creation. More...
 
- Protected Attributes inherited from CommandHandler
bool commandsEnabled = true
 
std::vector< CmdHandlerCommanddefregisteredCommands
 
CmdHandlerInfo cmdHandlerInfo
 
- Static Protected Attributes inherited from FFBoardMain
static char cdcbuf []
 

Detailed Description

Definition at line 13 of file CustomMain.h.

Member Enumeration Documentation

◆ CustomMain_commands

enum class CustomMain::CustomMain_commands : uint32_t
strongprivate
Enumerator
command 

Definition at line 14 of file CustomMain.h.

Constructor & Destructor Documentation

◆ CustomMain()

CustomMain::CustomMain ( )

Definition at line 23 of file CustomMain.cpp.

◆ ~CustomMain()

CustomMain::~CustomMain ( )
virtual

Definition at line 27 of file CustomMain.cpp.

Member Function Documentation

◆ command()

CommandStatus CustomMain::command ( const ParsedCommand cmd,
std::vector< CommandReply > &  replies 
)
virtual
Parameters
[in]cmdThe parsed command to be executed.
[out]repliesA vector to return one or multiple reply objects into. Replies to the interface will be generated based on the reply objects. A string reply may not contain start, end and separation markers: [,],| Other characters are allowed.

Reimplemented from FFBoardMain.

Definition at line 40 of file CustomMain.cpp.

◆ getHelpstring()

std::string CustomMain::getHelpstring ( )
virtual

Returns a description of this class

Reimplemented from FFBoardMain.

Definition at line 36 of file CustomMain.cpp.

◆ getInfo()

const ClassIdentifier CustomMain::getInfo ( )
virtual

Reimplemented from FFBoardMain.

Definition at line 17 of file CustomMain.cpp.

◆ registerCommands()

void CustomMain::registerCommands ( )

Definition at line 31 of file CustomMain.cpp.

Member Data Documentation

◆ examplevar

int32_t CustomMain::examplevar = 0
private

Definition at line 30 of file CustomMain.h.

◆ info

ClassIdentifier CustomMain::info
static
Initial value:
= {
.name = "Custom" ,
.id=CLSID_CUSTOM,
}

Definition at line 23 of file CustomMain.h.


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