43 mutable std::weak_ptr<CellSystem::CellSystem> m_cell_structure;
44 mutable std::weak_ptr<Interactions::BondedInteractions> m_bonded_ias;
45 mutable std::weak_ptr<::System::System> m_system;
46 auto get_cell_structure()
const {
47 auto ptr = m_cell_structure.lock();
51 auto get_bonded_ias()
const {
52 auto ptr = m_bonded_ias.lock();
56 auto get_system()
const {
57 auto ptr = m_system.lock();
63 T get_particle_property(T
const &(
Particle::*
getter)()
const)
const;
64 template <
typename T,
class F> T get_particle_property(
F const &
fun)
const;
70 template <
class F>
void set_particle_property(
F const &
fun)
const;
72 void particle_exclusion_sanity_checks(
int pid1,
int pid2)
const;
84 assert(m_system.expired());
Variant do_call_method(std::string const &name, VariantMap const ¶ms) override
void attach(std::weak_ptr<::System::System > system)
void do_construct(VariantMap const ¶ms) override
boost::make_recursive_variant< None, bool, int, std::size_t, double, std::string, ObjectRef, Utils::Vector3b, Utils::Vector3i, Utils::Vector2d, Utils::Vector3d, Utils::Vector4d, std::vector< int >, std::vector< double >, std::vector< boost::recursive_variant_ >, std::unordered_map< int, boost::recursive_variant_ >, std::unordered_map< std::string, boost::recursive_variant_ > >::type Variant
Possible types for parameters.
Struct holding all information for one particle.