1#ifndef PSIMULATIONTHREAD_H 
    2#define PSIMULATIONTHREAD_H 
    6#include <QWaitCondition> 
   10#include <condition_variable> 
   76        void resetNode(std::shared_ptr<Node> node);
 
   79        void syncNode(std::shared_ptr<Node> node);
 
 
static std::atomic< PSimulationThread * > pInstance
 
void reset(int num)
Reset the simulation.
 
void startUpdatingGraphicsContext()
 
std::atomic< bool > mPaused
 
void simulationFinished()
 
void oneFrameFinished(int frame)
 
std::shared_ptr< Node > mActiveNode
 
std::atomic< bool > mUpdatingGraphicsContext
 
std::condition_variable_any mCond
 
static PSimulationThread * instance()
 
void syncNode(std::shared_ptr< Node > node)
 
void resetQtNode(Qt::QtNode &node)
 
std::chrono::milliseconds mTimeOut
 
std::atomic< bool > mRunning
 
void proceed(int num)
Continue the simulation from the current frame.
 
void resetNode(std::shared_ptr< Node > node)
 
static std::mutex mInstanceMutex
 
std::atomic< int > mTotalFrame
 
void stopUpdatingGraphicsContext()
 
void setTotalFrames(int num)
 
This is an implementation of AdditiveCCD based on peridyno.