10 #include <Atoms/LayoutGenerators/LayoutGenerator.h>
28 virtual std::vector<AgentInitData>
generate(
double time) = 0;
32 bool checkGeneration(
double time);
36 void applyOffsetToData();
38 inline unsigned int dynamicGroupIdOffset()
const;
40 inline void setDynamicGroupIdOffset(
unsigned int value);
42 inline void addDynamicGroupIdOffset(
unsigned int value);
44 inline unsigned int dynamicMethod()
const;
46 inline void setDynamicMethod(
unsigned int value);
48 inline bool generateOnInitSimulation()
const;
50 inline void setGenerateOnInitSimulation(
bool value);
52 inline double timeToGenerate()
const;
54 inline void setTimeToGenerate(
double value);
56 inline void decreaseTimeToGenerate();
58 inline bool generatorTrigger()
const;
60 inline void setGeneratorTrigger(
bool value);
62 inline bool randomizeAgentTypes()
const;
64 inline void setRandomizeAgentTypes(
bool value);
66 inline bool resetSeed()
const;
68 inline void setResetSeed(
bool value);
70 inline const std::vector<std::string>& randomAgentTypes()
const;
72 inline void setRandomAgentTypes(
const std::vector<std::string>& value);
78 inline const std::vector<Atoms::AgentInitData>& getData()
const;
80 inline void setData(
const std::vector<Atoms::AgentInitData>& data,
bool check =
false);
84 AtomsCore::Rand48 m_randDynamic;
88 std::vector<Atoms::AgentInitData> m_data;
90 std::vector<std::string> m_randomAgentTypes;
94 double m_timeToGenerate;
96 unsigned int m_dynamicGroupIdOffset;
98 unsigned int m_dynamicMethod;
100 bool m_generateOnInit;
102 bool m_generatorTrigger;
104 bool m_randomizeAgentTypes;
111 #include "DynamicLayoutGenerator.impl.h"