.. _program_listing_file_SPlisHSPlasH_PBF_SimulationDataPBF.h: Program Listing for File SimulationDataPBF.h ============================================ |exhale_lsh| :ref:`Return to documentation for file ` (``SPlisHSPlasH/PBF/SimulationDataPBF.h``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp #ifndef __SimulationDataPBF_h__ #define __SimulationDataPBF_h__ #include "SPlisHSPlasH/Common.h" #include #include "SPlisHSPlasH/FluidModel.h" namespace SPH { class SimulationDataPBF { public: SimulationDataPBF(); virtual ~SimulationDataPBF(); protected: std::vector> m_lambda; std::vector> m_deltaX; std::vector> m_oldX; std::vector> m_lastX; public: virtual void init(); virtual void cleanup(); virtual void reset(); void performNeighborhoodSearchSort(); void emittedParticles(FluidModel *model, const unsigned int startIndex); FORCE_INLINE const Real& getLambda(const unsigned int fluidIndex, const unsigned int i) const { return m_lambda[fluidIndex][i]; } FORCE_INLINE Real& getLambda(const unsigned int fluidIndex, const unsigned int i) { return m_lambda[fluidIndex][i]; } FORCE_INLINE void setLambda(const unsigned int fluidIndex, const unsigned int i, const Real &val) { m_lambda[fluidIndex][i] = val; } FORCE_INLINE Vector3r &getDeltaX(const unsigned int fluidIndex, const unsigned int i) { return m_deltaX[fluidIndex][i]; } FORCE_INLINE const Vector3r &getDeltaX(const unsigned int fluidIndex, const unsigned int i) const { return m_deltaX[fluidIndex][i]; } FORCE_INLINE void setDeltaX(const unsigned int fluidIndex, const unsigned int i, const Vector3r &val) { m_deltaX[fluidIndex][i] = val; } FORCE_INLINE Vector3r &getLastPosition(const unsigned int fluidIndex, const unsigned int i) { return m_lastX[fluidIndex][i]; } FORCE_INLINE const Vector3r &getLastPosition(const unsigned int fluidIndex, const unsigned int i) const { return m_lastX[fluidIndex][i]; } FORCE_INLINE void setLastPosition(const unsigned int fluidIndex, const unsigned int i, const Vector3r &pos) { m_lastX[fluidIndex][i] = pos; } FORCE_INLINE Vector3r &getOldPosition(const unsigned int fluidIndex, const unsigned int i) { return m_oldX[fluidIndex][i]; } FORCE_INLINE const Vector3r &getOldPosition(const unsigned int fluidIndex, const unsigned int i) const { return m_oldX[fluidIndex][i]; } FORCE_INLINE void setOldPosition(const unsigned int fluidIndex, const unsigned int i, const Vector3r &pos) { m_oldX[fluidIndex][i] = pos; } }; } #endif