Program Listing for File alignment_force.hpp
↰ Return to documentation for file (cosm/apf2D/flocking/alignment_force.hpp
)
#pragma once
/*******************************************************************************
* Includes
******************************************************************************/
#include <vector>
#include "cosm/cosm.hpp"
#include "cosm/apf2D/boid.hpp"
#include "cosm/apf2D/flocking/config/alignment_force_config.hpp"
/*******************************************************************************
* Namespaces/Decls
******************************************************************************/
namespace cosm::apf2D::flocking {
/*******************************************************************************
* Class Definitions
******************************************************************************/
class alignment_force : public rer::client<alignment_force> {
public:
explicit alignment_force(const config::alignment_force_config* config);
rmath::vector2d operator()(const boid& agent,
const std::vector<rmath::vector2d>& others) const;
private:
/* clang-format off */
const double mc_max;
/* clang-format on */
};
} /* namespace cosm::apf2D::flocking */