12 #include "GDCore/Events/Instruction.h"
13 #include "GDCore/Events/InstructionsList.h"
14 #include "GDCore/Extensions/Metadata/InstructionMetadata.h"
15 #include "GDCore/Project/MemoryTrackedRegistry.h"
16 #include "GDCore/String.h"
21 class EventsCodeGenerator;
22 class EventsCodeGenerationContext;
24 class SerializerElement;
27 class ReadOnlyEventVisitor;
28 class VariablesContainer;
34 typedef std::shared_ptr<BaseEvent> BaseEventSPtr;
95 bool HasSubEvents()
const;
107 return badLocalVariables;
114 return badLocalVariables;
121 bool HasVariables()
const;
148 std::vector<gd::InstructionsList*> noConditions;
151 virtual std::vector<const gd::InstructionsList*> GetAllConditionsVectors()
153 std::vector<const gd::InstructionsList*> noConditions;
162 std::vector<gd::InstructionsList*> noActions;
165 virtual std::vector<const gd::InstructionsList*> GetAllActionsVectors()
167 std::vector<const gd::InstructionsList*> noActions;
176 std::vector<gd::String> noSearchableStrings;
177 return noSearchableStrings;
180 virtual bool ReplaceAllSearchableStrings(
181 std::vector<gd::String> newSearchableString) {
189 virtual std::vector<std::pair<gd::Expression*, gd::ParameterMetadata> >
191 std::vector<std::pair<gd::Expression*, gd::ParameterMetadata> > noExpr;
195 std::pair<const gd::Expression*, const gd::ParameterMetadata> >
196 GetAllExpressionsWithMetadata()
const {
197 std::vector<std::pair<const gd::Expression*, const gd::ParameterMetadata> >
240 std::size_t indexOfTheEventInThisList);
245 void PreprocessAsyncActions(
const gd::Platform& platform);
317 aiGeneratedEventId = aiGeneratedEventId_;
324 return aiGeneratedEventId;
328 std::weak_ptr<gd::BaseEvent>
Base class defining an event.
Definition: Event.h:44
float percentDuringLastSession
Definition: Event.h:336
void SetType(gd::String type_)
Change the event type.
Definition: Event.h:290
virtual std::vector< gd::InstructionsList * > GetAllActionsVectors()
Return a list of all actions of the event.
Definition: Event.h:161
const gd::String & GetAiGeneratedEventId() const
Get the AI generated event ID.
Definition: Event.h:323
virtual std::vector< std::pair< gd::Expression *, gd::ParameterMetadata > > GetAllExpressionsWithMetadata()
Return a list of all expressions of the event, each with their associated metadata.
Definition: Event.h:190
void SetAiGeneratedEventId(const gd::String &aiGeneratedEventId_)
Set the AI generated event ID.
Definition: Event.h:316
virtual gd::BaseEvent * Clone() const
Definition: Event.h:61
virtual std::vector< gd::InstructionsList * > GetAllConditionsVectors()
Return a list of all conditions of the event.
Definition: Event.h:147
virtual bool CanHaveSubEvents() const
Definition: Event.h:79
virtual gd::InstructionsList * GetInstructionList(const gd::String &label)
Return the instruction list identified by label, or nullptr if the event has no such list.
Definition: Event.h:131
virtual void SerializeTo(SerializerElement &element) const
Serialize event.
Definition: Event.h:264
virtual bool CanHaveVariables() const
Definition: Event.h:101
void SetFolded(bool fold=true)
Set if the event must be folded (i.e: sub events must be hidden in the events editor).
Definition: Event.h:306
bool IsDisabled() const
True if event is disabled.
Definition: Event.h:300
virtual void UnserializeFrom(gd::Project &project, const SerializerElement &element)
Unserialize the event.
Definition: Event.h:269
virtual bool MustBePreprocessed()
If MustBePreprocessed is redefined to return true, the gd::EventMetadata::preprocessing associated to...
Definition: Event.h:255
virtual std::vector< gd::String > GetAllSearchableStrings() const
Return a list of all strings of the event.
Definition: Event.h:175
virtual bool IsExecutable() const
Definition: Event.h:73
virtual gd::EventsList & GetSubEvents()
Definition: Event.h:89
void SetDisabled(bool disable=true)
Set if the event if disabled or not.
Definition: Event.h:295
virtual const gd::EventsList & GetSubEvents() const
Definition: Event.h:84
std::weak_ptr< gd::BaseEvent > originalEvent
Definition: Event.h:329
bool IsFolded() const
True if the event should be folded in the events editor.
Definition: Event.h:311
const gd::String & GetType() const
Return the event type.
Definition: Event.h:285
virtual const gd::VariablesContainer & GetVariables() const
Definition: Event.h:106
virtual gd::VariablesContainer & GetVariables()
Definition: Event.h:113
signed long long totalTimeDuringLastSession
Definition: Event.h:333
Empty event doing nothing.
Definition: Event.h:364
Visitor of any kind of event.
Definition: EventVisitor.h:26
Used to manage the context when generating code for events.
Definition: EventsCodeGenerationContext.h:27
Internal class used to generate code from events.
Definition: EventsCodeGenerator.h:41
A list of events.
Definition: EventsList.h:32
Definition: InstructionsList.h:25
A non-copyable, non-movable member object that registers/unregisters its owner with MemoryTrackedRegi...
Definition: MemoryTrackedRegistry.h:238
Base class representing a project (game), including all resources, scenes, objects,...
Definition: Project.h:51
Visitor of any kind of event.
Definition: EventVisitor.h:54
A generic container that can represent a value ( containing a string, double, bool or int),...
Definition: SerializerElement.h:37
String represents an UTF8 encoded string.
Definition: String.h:33
Class defining a container for gd::Variable.
Definition: VariablesContainer.h:29
BaseEventSPtr GD_CORE_API CloneRememberingOriginalEvent(BaseEventSPtr event)
Definition: Event.cpp:180
Definition: CommonTools.h:24