ASL
0.1.7
Advanced Simulation Library
Toggle main menu visibility
Loading...
Searching...
No Matches
src
aslGenerators.h
Go to the documentation of this file.
1
/*
2
* Advanced Simulation Library <http://asl.org.il>
3
*
4
* Copyright 2015 Avtech Scientific <http://avtechscientific.com>
5
*
6
*
7
* This file is part of Advanced Simulation Library (ASL).
8
*
9
* ASL is free software: you can redistribute it and/or modify it
10
* under the terms of the GNU Affero General Public License as
11
* published by the Free Software Foundation, version 3 of the License.
12
*
13
* ASL is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU Affero General Public License for more details.
17
*
18
* You should have received a copy of the GNU Affero General Public License
19
* along with ASL. If not, see <http://www.gnu.org/licenses/>.
20
*
21
*/
22
23
24
#ifndef ASLGENERATORS_H
25
#define ASLGENERATORS_H
26
27
#include <memory>
28
//#include <acl/aclHardware.h>
29
#include "
acl/aclTypes.h
"
30
31
namespace
cl
32
{
33
class
CommandQueue
;
34
}
35
36
namespace
acl
37
{
38
class
VectorOfElementsData
;
39
class
VectorOfElements
;
40
typedef
std::shared_ptr<cl::CommandQueue>
CommandQueue
;
41
}
42
43
namespace
asl
44
{
45
template
<
typename
V>
class
DataWithGhostNodes
;
46
typedef
DataWithGhostNodes<acl::VectorOfElementsData>
DataWithGhostNodesACLData
;
47
typedef
std::shared_ptr<DataWithGhostNodesACLData>
SPDataWithGhostNodesACLData
;
48
typedef
DataWithGhostNodes<acl::VectorOfElements>
DataWithGhostNodesACL
;
49
typedef
std::shared_ptr<DataWithGhostNodesACL>
SPDataWithGhostNodesACL
;
50
class
AbstractDataWithGhostNodes
;
51
typedef
std::shared_ptr<AbstractDataWithGhostNodes>
SPAbstractDataWithGhostNodes
;
52
template
<
typename
V>
class
DataWrapper
;
53
typedef
DataWrapper<acl::VectorOfElementsData>
DataWrapperACLData
;
54
typedef
std::shared_ptr<DataWrapperACLData>
SPDataWrapperACLData
;
55
typedef
DataWrapper<acl::VectorOfElements>
DataWrapperACL
;
56
typedef
std::shared_ptr<DataWrapperACL>
SPDataWrapperACL
;
57
class
Block
;
58
59
61
64
template
<
typename
T>
SPDataWrapperACLData
generateDataContainerACL_SP
(
const
Block
&b,
65
unsigned
int
n = 1);
66
68
71
template
<
typename
T>
SPDataWithGhostNodesACLData
generateDataContainerACL_SP
(
const
Block
&b,
72
unsigned
int
n,
73
unsigned
int
gN);
74
76
79
template
<
typename
T>
SPDataWithGhostNodesACLData
generateDataContainerACL_SP
(
const
Block
&b,
80
unsigned
int
n,
81
unsigned
int
gN,
82
acl::CommandQueue
queue);
83
85
88
SPDataWithGhostNodesACLData
generateDataContainerACL_SP
(
const
Block
&b,
89
acl::TypeID
t,
90
unsigned
int
n,
91
unsigned
int
gN,
92
acl::CommandQueue
queue);
93
95
98
SPDataWithGhostNodesACLData
generateDataContainerACL_SP
(
const
Block
&b,
99
acl::TypeID
t,
100
unsigned
int
n,
101
unsigned
int
gN);
102
104
SPDataWrapperACL
generateDataContainer_SP
(
const
Block
&b,
const
acl::VectorOfElements
& a);
105
107
110
SPDataWithGhostNodesACL
generateDataContainer_SP
(
const
Block
&b,
111
const
acl::VectorOfElements
& a,
112
unsigned
int
gN);
113
114
116
template
<
typename
T>
SPDataWithGhostNodesACL
generateDataContainerConst_SP
(
const
Block
&b, T a,
unsigned
int
gN);
117
119
SPAbstractDataWithGhostNodes
generateDCFullSafe
(
SPAbstractDataWithGhostNodes
d);
120
122
SPAbstractDataWithGhostNodes
generateDCFullSafe
(
SPAbstractDataWithGhostNodes
d,
double
outVal);
123
124
125
126
127
}
//namespace acl
128
129
#endif
// ASLGenerator_H
aclTypes.h
acl::VectorOfElementsData
The class represents several ElementData.
Definition
aclVectorOfElementsDef.h:57
acl::VectorOfElements
The class represents several Element.
Definition
aclVectorOfElementsDef.h:92
asl::AbstractDataWithGhostNodes
Definition
aslDataWithGhostNodes.h:39
asl::Block
Definition
aslBlocks.h:57
asl::DataWithGhostNodes
Definition
aslDataWithGhostNodes.h:58
asl::DataWrapper
Class defines a folding rule into a 1D/2D/3D bulk.
Definition
aslDataWrapper.h:77
cl::CommandQueue
CommandQueue interface for cl_command_queue.
Definition
cl.hpp:5355
asl::generateDataContainerACL_SP
SPDataWrapperACLData generateDataContainerACL_SP(const Block &b, unsigned int n=1)
generates pointer to ACL Data field with n components
asl::generateDataContainer_SP
SPDataWrapperACL generateDataContainer_SP(const Block &b, const acl::VectorOfElements &a)
asl::generateDCFullSafe
SPAbstractDataWithGhostNodes generateDCFullSafe(SPAbstractDataWithGhostNodes d)
generates data container without ghost nodes and safe outOfboundary element acces
asl::generateDataContainerConst_SP
SPDataWithGhostNodesACL generateDataContainerConst_SP(const Block &b, T a, unsigned int gN)
acl
Advanced Computational Language.
Definition
acl.h:41
acl::CommandQueue
std::shared_ptr< cl::CommandQueue > CommandQueue
Definition
acl.h:51
acl::TypeID
TypeID
Definition
aclTypes.h:39
asl
Advanced Simulation Library.
Definition
aslDataInc.h:31
asl::SPDataWrapperACLData
std::shared_ptr< DataWrapperACLData > SPDataWrapperACLData
Definition
aslGenerators.h:54
asl::DataWithGhostNodesACLData
DataWithGhostNodes< acl::VectorOfElementsData > DataWithGhostNodesACLData
Definition
aslGenerators.h:46
asl::SPDataWrapperACL
std::shared_ptr< DataWrapperACL > SPDataWrapperACL
Definition
aslGenerators.h:56
asl::DataWrapperACLData
DataWrapper< acl::VectorOfElementsData > DataWrapperACLData
Definition
aslGenerators.h:53
asl::SPAbstractDataWithGhostNodes
std::shared_ptr< AbstractDataWithGhostNodes > SPAbstractDataWithGhostNodes
Definition
aslGenerators.h:51
asl::DataWithGhostNodesACL
DataWithGhostNodes< acl::VectorOfElements > DataWithGhostNodesACL
Definition
aslGenerators.h:48
asl::SPDataWithGhostNodesACL
std::shared_ptr< DataWithGhostNodesACL > SPDataWithGhostNodesACL
Definition
aslGenerators.h:49
asl::SPDataWithGhostNodesACLData
std::shared_ptr< DataWithGhostNodesACLData > SPDataWithGhostNodesACLData
Definition
aslGenerators.h:47
asl::DataWrapperACL
DataWrapper< acl::VectorOfElements > DataWrapperACL
Definition
aslGenerators.h:55
cl
The OpenCL C++ bindings are defined within this namespace.
Definition
acl.h:34
Generated by
1.17.0