#include <CommandParserInterface.h>
Public Member Functions | |
virtual const char * | GetName (void) const =0 |
virtual void | OnNewIncomingConnection (const SystemAddress &systemAddress, TransportInterface *transport) |
A callback for when systemAddress has connected to us. | |
virtual void | OnConnectionLost (const SystemAddress &systemAddress, TransportInterface *transport) |
A callback for when systemAddress has disconnected, either gracefully or forcefully. | |
virtual void | SendHelp (TransportInterface *transport, const SystemAddress &systemAddress)=0 |
A callback for when you are expected to send a brief description of your parser to systemAddress. | |
virtual bool | OnCommand (const char *command, unsigned numParameters, char **parameterList, TransportInterface *transport, const SystemAddress &systemAddress, const char *originalString)=0 |
Given command with parameters parameterList , do whatever processing you wish. | |
virtual void | OnTransportChange (TransportInterface *transport) |
This is called every time transport interface is registered. | |
virtual void | RegisterCommand (unsigned char parameterCount, const char *command, const char *commandHelp) |
virtual void | ReturnResult (bool res, const char *command, TransportInterface *transport, const SystemAddress &systemAddress) |
Just writes a string to the remote system based on the result ( res ) of your operation. | |
virtual void | ReturnResult (const char *command, TransportInterface *transport, const SystemAddress &systemAddress) |
Just writes a string to the remote system when you are calling a function that has no return value. |
CommandParserInterface provides a set of functions and interfaces that plug into the ConsoleServer class. Each CommandParserInterface works at the same time as other interfaces in the system.
virtual const char* RakNet::CommandParserInterface::GetName | ( | void | ) | const [pure virtual] |
You are responsible for overriding this function and returning a static string, which will identifier your parser. This should return a static string
Implemented in RakNet::LogCommandParser, and RakNet::RakNetCommandParser.
virtual bool RakNet::CommandParserInterface::OnCommand | ( | const char * | command, | |
unsigned | numParameters, | |||
char ** | parameterList, | |||
TransportInterface * | transport, | |||
const SystemAddress & | systemAddress, | |||
const char * | originalString | |||
) | [pure virtual] |
Given command with parameters parameterList , do whatever processing you wish.
[in] | command | The command to process |
[in] | numParameters | How many parameters were passed along with the command |
[in] | parameterList | The list of parameters. parameterList[0] is the first parameter and so on. |
[in] | transport | The transport interface we can use to write to |
[in] | systemAddress | The player that sent this command. |
[in] | originalString | The string that was actually sent over the network, in case you want to do your own parsing |
Implemented in RakNet::LogCommandParser, and RakNet::RakNetCommandParser.
virtual void RakNet::CommandParserInterface::OnConnectionLost | ( | const SystemAddress & | systemAddress, | |
TransportInterface * | transport | |||
) | [virtual] |
A callback for when systemAddress has disconnected, either gracefully or forcefully.
[in] | systemAddress | The player that has disconnected. |
[in] | transport | The transport interface that sent us this information. |
Reimplemented in RakNet::LogCommandParser.
virtual void RakNet::CommandParserInterface::OnNewIncomingConnection | ( | const SystemAddress & | systemAddress, | |
TransportInterface * | transport | |||
) | [virtual] |
A callback for when systemAddress has connected to us.
[in] | systemAddress | The player that has connected. |
[in] | transport | The transport interface that sent us this information. Can be used to send messages to this or other players. |
Reimplemented in RakNet::LogCommandParser.
virtual void RakNet::CommandParserInterface::OnTransportChange | ( | TransportInterface * | transport | ) | [virtual] |
This is called every time transport interface is registered.
If you want to save a copy of the TransportInterface pointer This is the place to do it
[in] | transport | The new TransportInterface |
Reimplemented in RakNet::LogCommandParser.
virtual void RakNet::CommandParserInterface::RegisterCommand | ( | unsigned char | parameterCount, | |
const char * | command, | |||
const char * | commandHelp | |||
) | [virtual] |
Registers a command.
[in] | parameterCount | How many parameters your command requires. If you want to accept a variable number of commands, pass CommandParserInterface::VARIABLE_NUMBER_OF_PARAMETERS |
[in] | command | A pointer to a STATIC string that has your command. I keep a copy of the pointer here so don't deallocate the string. |
[in] | commandHelp | A pointer to a STATIC string that has the help information for your command. I keep a copy of the pointer here so don't deallocate the string. |
virtual void RakNet::CommandParserInterface::ReturnResult | ( | const char * | command, | |
TransportInterface * | transport, | |||
const SystemAddress & | systemAddress | |||
) | [virtual] |
Just writes a string to the remote system when you are calling a function that has no return value.
This is not necessary to call, but makes it easier to return results of function calls.
[in] | res | The result to write |
[in] | command | The command that this result came from |
[in] | transport | The transport interface that will be written to |
[in] | systemAddress | The player this result will be sent to |
virtual void RakNet::CommandParserInterface::ReturnResult | ( | bool | res, | |
const char * | command, | |||
TransportInterface * | transport, | |||
const SystemAddress & | systemAddress | |||
) | [virtual] |
Just writes a string to the remote system based on the result ( res ) of your operation.
This is not necessary to call, but makes it easier to return results of function calls.
[in] | res | The result to write |
[in] | command | The command that this result came from |
[in] | transport | The transport interface that will be written to |
[in] | systemAddress | The player this result will be sent to |
virtual void RakNet::CommandParserInterface::SendHelp | ( | TransportInterface * | transport, | |
const SystemAddress & | systemAddress | |||
) | [pure virtual] |
A callback for when you are expected to send a brief description of your parser to systemAddress.
[in] | transport | The transport interface we can use to write to |
[in] | systemAddress | The player that requested help. |
Implemented in RakNet::LogCommandParser, and RakNet::RakNetCommandParser.