PeriDyno 1.0.0
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
22
24
28 DEF_ARRAY_STATE(Coord, Position, DeviceType::GPU, "Vertex position");
29
33 DEF_ARRAY_STATE(Coord, Velocity, DeviceType::GPU, "Vertex velocity");
34
38 DEF_ARRAY_STATE(Coord, Force, DeviceType::GPU, "Vertex force");
39 public:
40
41 /*void loadVertexFromFile(std::string filename);
42
43 void loadVertexFromGmshFile(std::string filename);*/
44
45 void addThread(Coord start, Coord end, int segSize);
46
47
48 protected:
49 void updateTopology() override;
50 void resetStates() override;
51
52 std::vector<Coord> particles;
53 std::vector<TopologyModule::Edge> edges;
54
55// virtual void setVisible(bool visible) override;
56 };
57}
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