V-Gears 0
Free Final Fantasy VII engine.
ConfigCmd.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2022 The V-Gears Team
3 *
4 * This file is part of V-Gears
5 *
6 * V-Gears is free software: you can redistribute it and/or modify it under
7 * terms of the GNU General Public License as published by the Free Software
8 * Foundation, version 3.0 (GPLv3) of the License.
9 *
10 * V-Gears is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 */
15
16#pragma once
17
18#include <OgreString.h>
19#include <OgreStringVector.h>
20
22
23typedef void (*ConfigCmdParams)(const Ogre::StringVector& params);
24
25typedef void (*ConfigCmdCompletion)(Ogre::StringVector& complete_params);
26
27
32
33 friend class ConfigCmdHandler;
34
35 public:
36
49 const Ogre::String& name, const Ogre::String& description,
50 const Ogre::String& params_description, ConfigCmdParams params,
51 ConfigCmdCompletion completion
52 );
53
59 const Ogre::String& GetName() const;
60
66 const Ogre::String& GetDescription() const;
67
74
81
88
89 private:
90
96 ConfigCmd(const ConfigCmd& rhs) = delete;
97
103 ConfigCmd& operator =(const ConfigCmd& rhs) = delete;
104
109
114
119
124
129};
130
void(* ConfigCmdParams)(const Ogre::StringVector &params)
Definition: ConfigCmd.h:23
void(* ConfigCmdCompletion)(Ogre::StringVector &complete_params)
Definition: ConfigCmd.h:25
A handler for configuration commands.
Definition: ConfigCmdHandler.h:26
A configuration command.
Definition: ConfigCmd.h:31
ConfigCmd & operator=(const ConfigCmd &rhs)=delete
Forbidden copy constructor.
Ogre::String name_
The command name.
Definition: ConfigCmd.h:108
ConfigCmd(const Ogre::String &name, const Ogre::String &description, const Ogre::String &params_description, ConfigCmdParams params, ConfigCmdCompletion completion)
Constructor.
Definition: ConfigCmd.cpp:18
ConfigCmdCompletion completion_
The command completion.
Definition: ConfigCmd.h:128
ConfigCmdParams GetHandler() const
Retrieves the command parameter description.
Definition: ConfigCmd.cpp:35
ConfigCmdParams params_
The command parameter handler.
Definition: ConfigCmd.h:123
const Ogre::String & GetParamsDescription() const
Retrieves the command parameter description.
Definition: ConfigCmd.cpp:33
ConfigCmd(const ConfigCmd &rhs)=delete
Forbidden copy constructor.
const Ogre::String & GetDescription() const
Retrieves the command description.
Definition: ConfigCmd.cpp:31
Ogre::String description_
The command description.
Definition: ConfigCmd.h:113
Ogre::String params_description_
The command parameters description.
Definition: ConfigCmd.h:118
const Ogre::String & GetName() const
Retrieves the command name.
Definition: ConfigCmd.cpp:29
ConfigCmdCompletion GetCompletion() const
Checks the command completion.
Definition: ConfigCmd.cpp:37
Ogre::String String
Definition: TypeDefine.h:37