22 #include "object/interface/programmable_object.h"
26 #include "object/interface/interactive_object.h"
27 #include "object/interface/trace_drawing_object.h"
44 TraceOper oper = TO_STOP;
54 bool EventProcess(
const Event& event);
69 bool GetActivity()
override;
71 void SetCmdLine(
unsigned int rank,
float value);
73 std::vector<float>& GetCmdLine();
77 void TraceRecordFrame();
79 bool TraceRecordOper(TraceOper oper,
float param);
81 bool TraceRecordPut(std::stringstream& buffer, TraceOper oper,
float param);
89 std::vector<float> m_cmdLine;
94 TraceOper m_traceOper;
97 TraceColor m_traceColor;
98 int m_traceRecordIndex;
99 std::unique_ptr<TraceRecord[]> m_traceRecordBuffer;
bool ReadStack(FILE *file) override
Read current execution status from file.
Definition: programmable_impl.cpp:146
bool WriteStack(FILE *file) override
Save current execution status to file.
Definition: programmable_impl.cpp:174
Definition: programmable_impl.h:48
void TraceRecordStart() override
Start recording trace.
Definition: programmable_impl.cpp:205
void SetActivity(bool activity) override
Management of object "activity" (temporairly stops program execution, right now used only by Aliens i...
Definition: programmable_impl.cpp:99
Definition: programmable_impl.h:42
Interface for programmable objects.
Definition: programmable_object.h:36
bool IsTraceRecord() override
Returns true if trace recording is in progress.
Definition: programmable_impl.cpp:387
void RunProgram(Program *program) override
Start a program.
Definition: programmable_impl.cpp:110
void StopProgram() override
Stop currently running program.
Definition: programmable_impl.cpp:121
bool IsProgram() override
Check if a program is running.
Definition: programmable_impl.cpp:138
float GetCmdLine(unsigned int rank) override
Returns program cmdline values for an object.
Definition: programmable_impl.cpp:410
Vector struct and related functions.
3D (3x1) vector
Definition: vector.h:53
void TraceRecordStop() override
Stop recording trace and generate CBot program.
Definition: programmable_impl.cpp:291
Event sent by system, interface or game.
Definition: event.h:735
Base class for all 3D in-game objects.
Definition: object.h:63
Definition: program_storage_object.h:31
Program * GetCurrentProgram() override
Returns the currently running program, or nullptr if no program is running.
Definition: programmable_impl.cpp:133