// This Header is auto generated by BDSLiteLoader Toolchain
#pragma once
#define AUTO_GENERATED
#include "llapi/Global.h"

#define BEFORE_EXTRA

#undef BEFORE_EXTRA

class BaseCommandBlock {

#define AFTER_EXTRA
public:
    inline std::string const & getCommand() const{
        //BaseCommandBlock::_setCommand a4 is Command;
        return dAccess<std::string>(this,ll::offset::BASECOMMANDBLOCK_getCommand);
    };
#undef AFTER_EXTRA
#ifndef DISABLE_CONSTRUCTOR_PREVENTION_BASECOMMANDBLOCK
public:
    class BaseCommandBlock& operator=(class BaseCommandBlock const &) = delete;
    BaseCommandBlock(class BaseCommandBlock const &) = delete;
    BaseCommandBlock() = delete;
#endif

public:
#ifdef ENABLE_VIRTUAL_FAKESYMBOL_BASECOMMANDBLOCK
#endif
    MCAPI std::string getLastOutput() const;
    MCAPI void load(class CompoundTag const &, class DataLoadHelper &);
    MCAPI bool save(class CompoundTag &) const;
    MCAPI void setLastOutput(std::string const &, std::vector<std::string> const &);
    MCAPI void setTrackOutput(bool);

//private:
    MCAPI bool _performCommand(class BlockSource &, class CommandOrigin const &, bool &);
    MCAPI void _setCommand(class BlockSource &, class CommandOrigin const &, std::string const &);
    MCAPI void compile(class CommandOrigin const &, class Level &);

private:
    MCAPI static std::string const DefaultCommandBlockName;

};