File plugin.h¶
FileList > endstone > plugin > plugin.h
Go to the source code of this file
#include <algorithm>#include <filesystem>#include <memory>#include <string>#include <unordered_map>#include <utility>#include <vector>#include "endstone/command/command_executor.h"#include "endstone/detail/plugin/plugin_description_builder.h"#include "endstone/logger.h"#include "endstone/permissions/permission.h"#include "endstone/plugin/plugin_description.h"#include "endstone/server.h"
Namespaces¶
| Type | Name | 
|---|---|
| namespace | endstone  | 
| namespace | detail  | 
Classes¶
| Type | Name | 
|---|---|
| class | Plugin  Represents a Plugin .  | 
Macros¶
| Type | Name | 
|---|---|
| define | ENDSTONE_PLUGIN (Name, Version, MainClass)  | 
Macro Definition Documentation¶
define ENDSTONE_PLUGIN¶
#define ENDSTONE_PLUGIN (
    Name,
    Version,
    MainClass
) class PluginDescriptionBuilderImpl : public endstone::detail::PluginDescriptionBuilder { \
    public:                                                                                  \
        PluginDescriptionBuilderImpl();                                                      \
    };                                                                                       \
    static PluginDescriptionBuilderImpl builder;                                             \
    class EndstonePluginImpl : public MainClass {                                            \
    public:                                                                                  \
        EndstonePluginImpl() = default;                                                      \
        const endstone::PluginDescription &getDescription() const override                   \
        {                                                                                    \
            return description_;                                                             \
        }                                                                                    \
                                                                                             \
    private:                                                                                 \ endstone::PluginDescription description_ = builder.build(Name, Version);             \
    };                                                                                       \
    extern "C" [[maybe_unused]] ENDSTONE_EXPORT endstone::Plugin *init_endstone_plugin()     \
    {                                                                                        \
        auto *p = new EndstonePluginImpl();                                                  \
        return p;                                                                            \
    }                                                                                        \
    PluginDescriptionBuilderImpl::PluginDescriptionBuilderImpl()
The documentation for this class was generated from the following file include/endstone/plugin/plugin.h