Files
bluflame/aiwaz/Aiwaz/Commands/CommandUserBase.h
2026-04-18 22:31:51 +02:00

33 lines
846 B
C++

#pragma once
#include "ICommandUser.h"
#include "IRenderCommandNode.h"
class CommandUserBase
: public ICommandUser
{
public:
CommandUserBase();
virtual ~CommandUserBase();
virtual const std::vector<Command*>& GetCommands() const;
virtual CommandExecuteResult::Enumeration ExecuteCommand(unsigned char argCommandType, ICommandBuffer& argCurrentBuffer, uint32 argCurrentPositon) = 0;
virtual void AssignToRenderCommandNode(IRenderCommandNode& argNode);
virtual void UnassignFromRenderCommandNode(IRenderCommandNode& argNode);
virtual bool get_IsPreconditionForNextCommands() const { return false; }
virtual string8 get_UserName() const = 0;
protected:
void UnassignFromSceneNodes();
void MarkCommandsAsDirty();
std::vector<Command*> m_Commands;
private:
std::vector<IRenderCommandNode*> m_RenderCommandNodesIamAssignedTo;
};