LeviLamina
Loading...
Searching...
No Matches
ProjectCommand.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/PathBuffer.h"
7#include "mc/server/commands/ServerCommand.h"
8
9// auto generated forward declare list
10// clang-format off
11class CommandOrigin;
12class CommandOutput;
13class CommandRegistry;
14class Level;
15struct ActorUniqueID;
16// clang-format on
17
19public:
20 // ProjectCommand inner types define
21 enum class Subcommand : int {
22 None = 0,
23 Export = 1,
24 };
25
26 enum class ExportSubcommandTypes : int {
27 None = 0,
28 Project = 1,
29 World = 2,
30 Template = 3,
31 };
32
33 enum class TaskState : int {
34 Running = 0,
35 Complete = 1,
36 Error = 2,
37 };
38
39public:
40 // member variables
41 // NOLINTBEGIN
44 // NOLINTEND
45
46public:
47 // prevent constructor by default
48 ProjectCommand& operator=(ProjectCommand const&);
51
52public:
53 // virtual functions
54 // NOLINTBEGIN
55 // vIndex: 2
56 virtual void execute(::CommandOrigin const& origin, ::CommandOutput& output) const /*override*/;
57
58 // vIndex: 0
59 virtual ~ProjectCommand() /*override*/ = default;
60 // NOLINTEND
61
62public:
63 // static functions
64 // NOLINTBEGIN
65 MCAPI static void _cleanupOutputDirOnExportFailure(::Core::PathBuffer<::std::string> const& pathToOutputDir);
66
67 MCAPI static void _exportSubcommand(
68 ::CommandOrigin const& output,
69 ::CommandOutput& commandExportType,
70 ::ProjectCommand::ExportSubcommandTypes callingPlayerUniqueId,
72 );
73
74 MCAPI static ::Core::PathBuffer<::std::string> _getLevelExportPath(
75 ::ActorUniqueID callingPlayerUniqueId,
76 ::Level* level,
77 ::std::string const& exportFileExtension
78 );
79
80 MCAPI static void _outputFormattedCommand(
81 ::ActorUniqueID callingPlayerUniqueId,
82 ::Level* level,
83 ::std::string const& prefix,
84 ::std::string const& commandType,
85 ::std::string const& msg,
86 ::std::vector<::std::string> const& args
87 );
88
89 MCAPI static void _reportErrorToUser(
90 ::ActorUniqueID callingPlayerUniqueId,
91 ::Level* level,
92 ::std::string const& commandType,
93 ::std::string const& msg,
94 ::std::vector<::std::string> const& args
95 );
96
97 MCAPI static void _reportToUser(
98 ::ActorUniqueID callingPlayerUniqueId,
99 ::Level* level,
100 ::std::string const& commandType,
101 ::std::string const& msg,
102 ::std::vector<::std::string> const& args
103 );
104
105 MCAPI static void setup(::CommandRegistry& registry);
106 // NOLINTEND
107
108public:
109 // destructor thunk
110 // NOLINTBEGIN
111
112 // NOLINTEND
113
114public:
115 // virtual function thunks
116 // NOLINTBEGIN
117 MCAPI void $execute(::CommandOrigin const& origin, ::CommandOutput& output) const;
118 // NOLINTEND
119
120public:
121 // vftables
122 // NOLINTBEGIN
123 MCAPI static void** $vftable();
124 // NOLINTEND
125};
Definition CommandOrigin.h:32
Definition CommandOutput.h:19
Definition CommandRegistry.h:44
Definition PathBuffer.h:8
Definition Level.h:234
Definition ProjectCommand.h:18
Definition ServerCommand.h:22
Definition ActorUniqueID.h:5
Definition Alias.h:14