|
OpenTTD Source 20251116-master-g21329071df
|
Public Member Functions | |
| void | Initialize () override |
| class AIInfo * | SelectRandomAI () const |
| Select a random AI. | |
| class AIInfo * | FindInfo (const std::string &name, int version, bool force_exact_match) |
| Check if we have an AI by name and version available in our list. | |
| void | SetDummyAI (std::unique_ptr< class AIInfo > &&info) |
| Set the Dummy AI. | |
Public Member Functions inherited from ScriptScanner | |
| class Squirrel * | GetEngine () |
| Get the engine of the main squirrel handler (it indexes all available scripts). | |
| std::string | GetMainScript () |
| Get the current main script the ScanDir is currently tracking. | |
| std::string | GetTarFile () |
| Get the current tar file the ScanDir is currently tracking. | |
| const ScriptInfoList * | GetInfoList () |
| Get the list of all registered scripts. | |
| const ScriptInfoList * | GetUniqueInfoList () |
| Get the list of the latest version of all registered scripts. | |
| void | RegisterScript (std::unique_ptr< class ScriptInfo > &&info) |
| Register a ScriptInfo to the scanner. | |
| void | GetConsoleList (std::back_insert_iterator< std::string > &output_iterator, bool newest_only) const |
| Get the list of registered scripts to print on the console. | |
| bool | HasScript (const struct ContentInfo &ci, bool md5sum) |
| Check whether we have a script with the exact characteristics as ci. | |
| std::optional< std::string_view > | FindMainScript (const ContentInfo &ci, bool md5sum) |
| Find a script of a ContentInfo. | |
| bool | AddFile (const std::string &filename, size_t basepath_length, const std::string &tar_filename) override |
| Add a file with the given filename. | |
| void | RescanDir () |
| Rescan the script dir. | |
Public Member Functions inherited from FileScanner | |
| virtual | ~FileScanner ()=default |
| Destruct the proper one... | |
| uint | Scan (std::string_view extension, Subdirectory sd, bool tars=true, bool recursive=true) |
| Scan for files with the given extension in the given search path. | |
| uint | Scan (std::string_view extension, const std::string &directory, bool recursive=true) |
| Scan for files with the given extension in the given search path. | |
Protected Member Functions | |
| std::string | GetScriptName (ScriptInfo &info) override |
| Get the script name how to store the script in memory. | |
| std::string_view | GetFileName () const override |
| Get the filename to scan for this type of script. | |
| Subdirectory | GetDirectory () const override |
| Get the directory to scan in. | |
| std::string_view | GetScannerName () const override |
| Get the type of the script, in plural. | |
| void | RegisterAPI (class Squirrel &engine) override |
| Register the API for this ScriptInfo. | |
Protected Member Functions inherited from ScriptScanner | |
| void | Initialize (std::string_view name) |
| Initialize the scanner. | |
| void | Reset () |
| Reset all allocated lists. | |
| void | ResetEngine () |
| Reset the engine to ensure a clean environment for further steps. | |
Private Attributes | |
| std::unique_ptr< AIInfo > | info_dummy |
| The dummy AI. | |
Additional Inherited Members | |
Protected Attributes inherited from ScriptScanner | |
| std::unique_ptr< class Squirrel > | engine |
| The engine we're scanning with. | |
| std::string | main_script |
| The full path of the script. | |
| std::string | tar_file |
| If, which tar file the script was in. | |
| std::vector< std::unique_ptr< ScriptInfo > > | info_vector |
| ScriptInfoList | info_list |
| The list of all script. | |
| ScriptInfoList | info_single_list |
| The list of all unique script. The best script (highest version) is shown. | |
Protected Attributes inherited from FileScanner | |
| Subdirectory | subdir |
| The current sub directory we are searching through. | |
Definition at line 15 of file ai_scanner.hpp.
| AIInfo * AIScannerInfo::FindInfo | ( | const std::string & | name, |
| int | version, | ||
| bool | force_exact_match | ||
| ) |
Check if we have an AI by name and version available in our list.
| name | The name of the AI. |
| version | The version of the AI, or -1 if you want the latest. |
| force_exact_match | Only match name+version, never latest. |
Definition at line 78 of file ai_scanner.cpp.
References AIInfo::CanLoadFromVersion(), ScriptInfo::GetName(), ScriptInfo::GetVersion(), ScriptScanner::info_list, ScriptScanner::info_single_list, and StrEqualsIgnoreCase().
|
inlineoverrideprotectedvirtual |
Get the directory to scan in.
Implements ScriptScanner.
Definition at line 45 of file ai_scanner.hpp.
References AI_DIR.
|
inlineoverrideprotectedvirtual |
Get the filename to scan for this type of script.
Implements ScriptScanner.
Definition at line 44 of file ai_scanner.hpp.
|
inlineoverrideprotectedvirtual |
Get the type of the script, in plural.
Implements ScriptScanner.
Definition at line 46 of file ai_scanner.hpp.
|
overrideprotectedvirtual |
Get the script name how to store the script in memory.
Implements ScriptScanner.
Definition at line 44 of file ai_scanner.cpp.
References ScriptInfo::GetName().
|
overridevirtual |
Implements ScriptScanner.
Definition at line 28 of file ai_scanner.cpp.
|
overrideprotectedvirtual |
Register the API for this ScriptInfo.
Implements ScriptScanner.
Definition at line 49 of file ai_scanner.cpp.
References ScriptScanner::engine, and AIInfo::RegisterAPI().
| AIInfo * AIScannerInfo::SelectRandomAI | ( | ) | const |
Select a random AI.
Definition at line 54 of file ai_scanner.cpp.
References Debug, info_dummy, ScriptScanner::info_single_list, and OWNER_NONE.
| void AIScannerInfo::SetDummyAI | ( | std::unique_ptr< class AIInfo > && | info | ) |
|
private |
The dummy AI.
Definition at line 50 of file ai_scanner.hpp.
Referenced by SelectRandomAI(), and SetDummyAI().