# AIScanner Class Reference

Inheritance diagram for AIScanner:

## Public Member Functions

bool | ImportLibrary (const char *library, const char *class_name, int version, HSQUIRRELVM vm, class AIController *controller)
| Import a library inside the Squirrel VM.
void | RegisterLibrary (class AILibrary *library)
| Register a library to be put in the available list.
void | RegisterAI (class AIInfo *info)
| Register an AI to be put in the available list.
void | SetDummyAI (class AIInfo *info)
class AIInfo * | SelectRandomAI () const
| Select a Random AI.
class AIInfo * | FindInfo (const char *name, int version, bool force_exact_match)
| Find an AI by name.
char * | GetAIConsoleList (char *p, const char *last) const
| Get the list of available AIs for the console.
const AIInfoList * | GetAIInfoList ()
| Get the list of all registered AIs.
const AIInfoList * | GetUniqueAIInfoList ()
| Get the list of the newest version of all registered AIs.
void | RescanAIDir ()
| Rescan the AI dir for scripts.
bool | HasAI (const struct ContentInfo *ci, bool md5sum)

## Private Types

typedef std::map< const char *, class AILibrary *, StringCompare > | AILibraryList

## Private Member Functions

void | ScanAIDir ()
| Scan the AI dir for scripts.

## Private Attributes

AIInfo * | info_dummy
AIInfoList | info_list
AIInfoList | info_single_list
AILibraryList | library_list

## Detailed Description

Definition at line 21 of file ai_scanner.hpp.

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

- src/ai/ai_scanner.hpp
- src/ai/ai_scanner.cpp