RakNet::LogCommandParser Class Reference
Adds the ability to send logging output to a remote console.
More...
#include <LogCommandParser.h>
List of all members.
|
Classes |
struct | SystemAddressAndChannel |
| One of these structures is created per player. More...
|
Public Member Functions |
bool | OnCommand (const char *command, unsigned numParameters, char **parameterList, TransportInterface *transport, const SystemAddress &systemAddress, const char *originalString) |
const char * | GetName (void) const |
void | SendHelp (TransportInterface *transport, const SystemAddress &systemAddress) |
void | AddChannel (const char *channelName) |
| All logs must be associated with a channel. This is a filter so that remote clients only get logs for a system they care about.
|
void | WriteLog (const char *channelName, const char *format,...) |
void | OnNewIncomingConnection (const SystemAddress &systemAddress, TransportInterface *transport) |
void | OnConnectionLost (const SystemAddress &systemAddress, TransportInterface *transport) |
void | OnTransportChange (TransportInterface *transport) |
Protected Member Functions |
void | PrintChannels (const SystemAddress &systemAddress, TransportInterface *transport) const |
unsigned | Unsubscribe (const SystemAddress &systemAddress, const char *channelName) |
unsigned | Subscribe (const SystemAddress &systemAddress, const char *channelName) |
unsigned | GetChannelIndexFromName (const char *channelName) |
Protected Attributes |
DataStructures::List
< SystemAddressAndChannel > | remoteUsers |
| The list of remote users. Added to when users subscribe, removed when they disconnect or unsubscribe.
|
const char * | channelNames [32] |
| Names of the channels at each bit, or 0 for an unused channel.
|
TransportInterface * | trans |
| This is so I can save the current transport provider, solely so I can use it without having the user pass it to Log.
|
Detailed Description
Adds the ability to send logging output to a remote console.
Member Function Documentation
void RakNet::LogCommandParser::AddChannel |
( |
const char * |
channelName |
) |
|
All logs must be associated with a channel. This is a filter so that remote clients only get logs for a system they care about.
- Parameters:
-
[in] | channelName | A persistent string naming the channel. Don't deallocate this string. |
unsigned RakNet::LogCommandParser::GetChannelIndexFromName |
( |
const char * |
channelName |
) |
[protected] |
Given the name of a channel, return the index into channelNames where it is located
- Parameters:
-
[in] | channelName | The name of the channel |
const char* RakNet::LogCommandParser::GetName |
( |
void |
|
) |
const [virtual] |
You are responsible for overriding this function and returning a static string, which will identifier your parser. This should return a static string
- Returns:
- The name that you return.
Implements RakNet::CommandParserInterface.
bool RakNet::LogCommandParser::OnCommand |
( |
const char * |
command, |
|
|
unsigned |
numParameters, |
|
|
char ** |
parameterList, |
|
|
TransportInterface * |
transport, |
|
|
const SystemAddress & |
systemAddress, |
|
|
const char * |
originalString | |
|
) |
| | [virtual] |
Given command with parameters parameterList , do whatever processing you wish.
- Parameters:
-
[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 |
Implements RakNet::CommandParserInterface.
A callback for when systemAddress has disconnected, either gracefully or forcefully
- Parameters:
-
[in] | systemAddress | The player that has disconnected. |
[in] | transport | The transport interface that sent us this information. |
Reimplemented from RakNet::CommandParserInterface.
A callback for when systemAddress has connected to us.
- Parameters:
-
[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 from RakNet::CommandParserInterface.
void RakNet::LogCommandParser::OnTransportChange |
( |
TransportInterface * |
transport |
) |
[virtual] |
Sends the currently active channels to the user
- Parameters:
-
[in] | systemAddress | The player to send to |
[in] | transport | The transport interface to use to send the channels |
A callback for when you are expected to send a brief description of your parser to systemAddress
- Parameters:
-
[in] | transport | The transport interface we can use to write to |
[in] | systemAddress | The player that requested help. |
Implements RakNet::CommandParserInterface.
unsigned RakNet::LogCommandParser::Subscribe |
( |
const SystemAddress & |
systemAddress, |
|
|
const char * |
channelName | |
|
) |
| | [protected] |
Subscribe a user to a channel (or to all channels)
- Parameters:
-
[in] | systemAddress | The player to subscribe to |
[in] | channelName | If 0, then subscribe from all channels. Otherwise subscribe to the named channel |
unsigned RakNet::LogCommandParser::Unsubscribe |
( |
const SystemAddress & |
systemAddress, |
|
|
const char * |
channelName | |
|
) |
| | [protected] |
Unsubscribe a user from a channel (or from all channels)
- Parameters:
-
[in] | systemAddress | The player to unsubscribe to |
[in] | channelName | If 0, then unsubscribe from all channels. Otherwise unsubscribe from the named channel |
void RakNet::LogCommandParser::WriteLog |
( |
const char * |
channelName, |
|
|
const char * |
format, |
|
|
|
... | |
|
) |
| | |
Write a log to a channel. Logs are not buffered, so only remote consoles connected and subscribing at the time you write will get the output.
- Parameters:
-
[in] | format | Same as RAKNET_DEBUG_PRINTF() |
[in] | ... | Same as RAKNET_DEBUG_PRINTF() |
The documentation for this class was generated from the following file: