6 AbstractUpdateParticleGridAssociation,
15 Simplistic action set which invokes gather() on the particle set
17 Plugs into touchVertexFirstTime(). Should be called prior to any use of
18 vertex data, but after all rearrangements have completed.
22 DefaultDescendInvocationOrder = (
23 AbstractUpdateParticleGridAssociation.DefaultDescendInvocationOrder - 1
30 super(GatherParticlesInMemoryPool, self).
__init__(
35 self.
d[
"PARTICLE"] = particle_set.particle_model.name
36 self.
d[
"PARTICLES_CONTAINER"] = particle_set.name
38 __Template_TouchVertexFirstTime = jinja2.Template(
40 fineGridVertex{{PARTICLES_CONTAINER}}.gather();
44 __Template_TouchVertexLastTime = jinja2.Template(
46 assertion1( fineGridVertex{{PARTICLES_CONTAINER}}.isGathered(), fineGridVertex{{PARTICLES_CONTAINER}}.toString() );
52 if operation_name == ActionSet.OPERATION_TOUCH_VERTEX_FIRST_TIME:
57 return " return std::vector< peano4::grid::GridControlEvent >();\n"
60 return __name__.replace(
".py",
"").replace(
".",
"_")
66 result = jinja2.Template(
68#include "vertexdata/{{PARTICLES_CONTAINER}}.h"
69#include "globaldata/{{PARTICLE}}.h"
72 return result.render(**self.
d)
Action set (reactions to events)
Simplistic action set which invokes gather() on the particle set.
tuple DefaultDescendInvocationOrder
get_includes(self)
Return include statements that you need.
get_action_set_name(self)
Return unique action set name.
user_should_modify_template(self)
Is the user allowed to modify the output.
get_body_of_createGridControlEventsForNextTraversal(self)
Return the grid control events that this action set wants to trigger.
__Template_TouchVertexFirstTime
get_body_of_operation(self, operation_name)
Return actual C++ code snippets to be inserted into C++ code.
__init__(self, particle_set)