6 #ifndef GDCORE_EFFECTS_CONTAINER_H
7 #define GDCORE_EFFECTS_CONTAINER_H
12 #include "GDCore/Project/MemoryTrackedRegistry.h"
13 #include "GDCore/String.h"
19 class SerializerElement;
40 bool HasEffectNamed(
const gd::String& name)
const;
55 Effect& GetEffect(std::size_t index);
60 const Effect& GetEffect(std::size_t index)
const;
65 std::size_t GetEffectPosition(
const gd::String& name)
const;
70 std::size_t GetEffectsCount()
const;
87 void InsertEffect(
const Effect& theEffect, std::size_t position);
97 void MoveEffect(std::size_t oldIndex, std::size_t newIndex);
102 void SwapEffects(std::size_t firstEffectIndex, std::size_t secondEffectIndex);
117 inline void Clear() { effects.clear(); }
120 std::vector<std::shared_ptr<gd::Effect>> effects;
Represents an effect that can be applied on a layer.
Definition: Effect.h:21
Contains effects applied to an entity on screen (i.e: a Layer or an Object).
Definition: EffectsContainer.h:30
void Clear()
Clear all effects of the container.
Definition: EffectsContainer.h:117
A non-copyable, non-movable member object that registers/unregisters its owner with MemoryTrackedRegi...
Definition: MemoryTrackedRegistry.h:238
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
Definition: CommonTools.h:24