ChatBlade SDK Documentation
CHATBLADE API Documentation

  ChatBlade is written in C++ using the STL.  
  It consists of a variety of interlinked Classes, associated Headers, and sample XML files.  
  CBChatHandler is the primary Class of ChatBlade.  Most Chat Processing passes through it.  
  CBChatHandler contains instances of CBAliasList, CBChatFilter, CBClientImplementation, CBIgnoreList, CBLanguageTables, CBNicknameList, CBReplacementFilter, CBSpamFilter, and CBSampleImplementation.  ChatBlade makes use of these contained instances to handle various Chat functionality.  
  Game Developers should implement the function stubs found in CBClientImplementation and CBSlashCommands.  
All member functions and data are declared Public in each class.  
  Class Overview:  
     CBAliasList    Used to support the /alias Command to allow Players to create their own Slash Commands.  
CBChatFilter Used to support the Chat Filter to replace offensive Chat.  
CBChatHandler Primary ChatBlade Class which handles Chat Processing and Routing.  
CBChatMessage Represents a single Chat Message in ChatBlade.  Contains Chat Channel, Source, Destination, and Text.  
CBChatSampleNetworkClient Sample Chat Networking.  Should be replaced with whatever Networking is used in the Game.  
CBClientImplementation Central location for Developers to add their game specific code for Chat Initialization and to return Player information.  
CBCommandMap Used to map a Slash Command Function with the typed Slash Commands which invoke that function.  
CBData Used by ChatBlade to hold various Static data.  Contains a pointer to our primary CBChatHandler instance.  
CBEditFieldData Used to assist a GUI Edit Field.  Keeps track of Chat History and the Default Slash Command for that Edit Field.  
CBIgnoreList Used to support the /ignore command to Ignore Chat from unpleasant Characters.  
CBLanguageTable Used to support in-game artificial Languages such as Elvish or Klingon.  
CBNicknameList Used to support the /nickname Slash Command to allow Players to create local Nicknames for use in /tells.  
CBReplacementFilter Used to support Replacement Filtering of Chat to assist Role-Players.   
CBSampleImplementation Sample code showing possible implementations of function in CBClientImplementation.  
CBSlashCommands Central location for all Slash Command Functions.  Developers should implement the stubs found here.  
CBSpamFilter Used to support the Spam Filter to block out Spam Chat Messages.  
CBTextWindowData Used to assist a GUI Text Window or Chat Tab.  Contains all the Chat Messages and keeps track of which Chat Channels to Monitor.  
CBUtils Contains various String Manipulation methods and assorted other functionality.  
CBSTRING An abstraction of the STL std::string class.  
  While ChatBlade is primarily supported under Windows, an effort has been made to use only standard C and C++ calls in the core ChatBlade Classes.  
  ChatBlade sample Classes make use of Windows specific calls.  ChatBlade Sample Test Applications are Windows programs.  
  Once the sample Classes are replaced with Developer code, ChatBlade should compile under Linux, the Mac, and other platforms which support C++ and STL, although this has not been fully tested and is not officially supported.  


ChatBlade Copyright © Flex Dolphynn