|
AQUAgpusph 5.0.4
|
Generic types definition file. More...
#include "resources/Scripts/types/2D.h"
Go to the source code of this file.
Macros | |
| #define | INFINITY FLT_MAX |
| #define | vec2 float2 |
| #define | vec3 float3 |
| #define | vec4 float4 |
| #define | vec8 float8 |
| #define | dvec2 double2 |
| #define | dvec3 double3 |
| #define | dvec4 double4 |
| #define | dvec8 double8 |
| #define | ivec2 int2 |
| #define | ivec3 int3 |
| #define | ivec4 int4 |
| #define | ivec8 int8 |
| #define | lvec2 long2 |
| #define | lvec3 long3 |
| #define | lvec4 long4 |
| #define | lvec8 long8 |
| #define | uivec2 uint2 |
| #define | uivec3 uint3 |
| #define | uivec4 uint4 |
| #define | uivec8 uint8 |
| #define | ulvec2 ulong2 |
| #define | ulvec3 ulong3 |
| #define | ulvec4 ulong4 |
| #define | ulvec8 ulong8 |
| #define | svec2 usize2 |
| #define | svec3 usize3 |
| #define | svec4 usize4 |
| #define | svec8 usize8 |
| #define | ssvec2 ssize2 |
| #define | ssvec3 ssize3 |
| #define | ssvec4 ssize4 |
| #define | ssvec8 ssize8 |
| #define | _CONVERT(TYPE) |
| Helper function for CONVERT. | |
| #define | CONVERT(TYPE, v) |
| Conversor between complex types. | |
| #define | C_I() |
| Utility to can redefine the cell of the particle to be computed. | |
| #define | LINKLIST_LOCAL_PARAMS |
| Macro to easily add the parameters to run BEGIN_NEIGHS macro, interacting with the local set of particles, i.e. the particles handled by this process. | |
| #define | LINKLIST_REMOTE_PARAMS |
| Macro to easily add the parameters to run BEGIN_NEIGHS macro, interacting with the local set of particles, i.e. the particles handled by this process. | |
Generic types definition file.
This file is redirecting to either 2D.hcl or 3D.hcl, depending on #HAVE_3D
| #define _CONVERT | ( | TYPE | ) |
Helper function for CONVERT.
The helper is required because the preprocessor is only recursively expanding macros if the definition is not affected by # nor ## string operators. Then, this inner function is concatenating the unexpanded words, while CONVERT is effectively expanding the type name.
| #define C_I | ( | ) |
Utility to can redefine the cell of the particle to be computed.
It can be used for mirrrored particles, which are temporary associated to a different cell.
| #define CONVERT | ( | TYPE, | |
| v ) |
Conversor between complex types.
In OpenCL, to convert between complex types the functions convert_TYPEN should be used. Otherwise casting errors will be received.
This definition provides a convenient function to become used with the overloaded types vec, ivec and uivec.
For instance, to convert a vec variable, v, to an ivec variable, you can call CONVERT(ivec, v);
| #define dvec2 double2 |
| #define dvec3 double3 |
| #define dvec4 double4 |
| #define dvec8 double8 |
| #define INFINITY FLT_MAX |
| #define ivec2 int2 |
| #define ivec3 int3 |
| #define ivec4 int4 |
| #define ivec8 int8 |
| #define LINKLIST_LOCAL_PARAMS |
Macro to easily add the parameters to run BEGIN_NEIGHS macro, interacting with the local set of particles, i.e. the particles handled by this process.
| #define LINKLIST_REMOTE_PARAMS |
Macro to easily add the parameters to run BEGIN_NEIGHS macro, interacting with the local set of particles, i.e. the particles handled by this process.
| #define lvec2 long2 |
| #define lvec3 long3 |
| #define lvec4 long4 |
| #define lvec8 long8 |
| #define ssvec2 ssize2 |
| #define ssvec3 ssize3 |
| #define ssvec4 ssize4 |
| #define ssvec8 ssize8 |
| #define svec2 usize2 |
| #define svec3 usize3 |
| #define svec4 usize4 |
| #define svec8 usize8 |
| #define uivec2 uint2 |
| #define uivec3 uint3 |
| #define uivec4 uint4 |
| #define uivec8 uint8 |
| #define ulvec2 ulong2 |
| #define ulvec3 ulong3 |
| #define ulvec4 ulong4 |
| #define ulvec8 ulong8 |
| #define vec2 float2 |
| #define vec3 float3 |
| #define vec4 float4 |
| #define vec8 float8 |