PeriDyno 1.2.1
Loading...
Searching...
No Matches
ThreadSystem.h
Go to the documentation of this file.
1#pragma once
2#include "Node.h"
3
4#include "Topology/EdgeSet.h"
5
6namespace dyno
7{
12 template<typename TDataType>
13 class ThreadSystem : public Node
14 {
15 public:
16 typedef typename TDataType::Real Real;
17 typedef typename TDataType::Coord Coord;
18
20 ~ThreadSystem() override;
21
23
27 DEF_ARRAY_STATE(Coord, Position, DeviceType::GPU, "Vertex position");
28
32 DEF_ARRAY_STATE(Coord, Velocity, DeviceType::GPU, "Vertex velocity");
33
37 DEF_ARRAY_STATE(Coord, Force, DeviceType::GPU, "Vertex force");
38 public:
39
40 /*void loadVertexFromFile(std::string filename);
41
42 void loadVertexFromGmshFile(std::string filename);*/
43
44 void addThread(Coord start, Coord end, int segSize);
45
46 protected:
47 void updateTopology() override;
48 void resetStates() override;
49
50 std::vector<Coord> particles;
51 std::vector<TopologyModule::Edge> edges;
52
53 // virtual void setVisible(bool visible) override;
54 };
55}
void updateTopology() override
DEF_ARRAY_STATE(Coord, Position, DeviceType::GPU, "Vertex position")
Vertex position.
void addThread(Coord start, Coord end, int segSize)
DEF_ARRAY_STATE(Coord, Force, DeviceType::GPU, "Vertex force")
Vertex velocity.
~ThreadSystem() override
DEF_ARRAY_STATE(Coord, Velocity, DeviceType::GPU, "Vertex velocity")
Vertex velocity.
TDataType::Coord Coord
DEF_INSTANCE_STATE(EdgeSet< TDataType >, EdgeSet, "")
std::vector< TopologyModule::Edge > edges
void resetStates() override
std::vector< Coord > particles
TDataType::Real Real
This is an implementation of AdditiveCCD based on peridyno.
Definition Array.h:25