Ice Sheet System Model  4.18
Code documentation
Functions
DistanceToMaskBoundaryx.cpp File Reference
#include "./DistanceToMaskBoundaryx.h"

Go to the source code of this file.

Functions

int DistanceToMaskBoundaryx (IssmDouble **pdistance, IssmDouble *x, IssmDouble *y, IssmDouble *mask, int nods)
 

Function Documentation

◆ DistanceToMaskBoundaryx()

int DistanceToMaskBoundaryx ( IssmDouble **  pdistance,
IssmDouble x,
IssmDouble y,
IssmDouble mask,
int  nods 
)

Definition at line 12 of file DistanceToMaskBoundaryx.cpp.

12  {
13 
14  /*output: */
15  IssmDouble* distance;
16 
17  /*initialize: */
18  distance=xNew<IssmDouble>(nods);
19 
20  /*initialize thread parameters: */
22  gate.distance = distance;
23  gate.x = x;
24  gate.y = y;
25  gate.mask = mask;
26  gate.nods = nods;
27 
28  /*launch the thread manager with DistanceToMaskBoundaryxt as a core: */
29  LaunchThread(DistanceToMaskBoundaryxt,(void*)&gate,_NUMTHREADS_);
30 
31  /*Assign output pointers: */
32  *pdistance=distance;
33 
34  return 1;
35 }
IssmDouble
double IssmDouble
Definition: types.h:37
LaunchThread
void LaunchThread(void *function(void *), void *gate, int num_threads)
Definition: LaunchThread.cpp:25
DistanceToMaskBoundaryxt
void * DistanceToMaskBoundaryxt(void *vDistanceToMaskBoundaryxThreadStruct)
Definition: DistanceToMaskBoundaryxt.cpp:13
DistanceToMaskBoundaryxThreadStruct::y
IssmDouble * y
Definition: DistanceToMaskBoundaryx.h:17
DistanceToMaskBoundaryxThreadStruct::distance
IssmDouble * distance
Definition: DistanceToMaskBoundaryx.h:15
DistanceToMaskBoundaryxThreadStruct::mask
IssmDouble * mask
Definition: DistanceToMaskBoundaryx.h:18
DistanceToMaskBoundaryxThreadStruct::nods
int nods
Definition: DistanceToMaskBoundaryx.h:14
DistanceToMaskBoundaryxThreadStruct::x
IssmDouble * x
Definition: DistanceToMaskBoundaryx.h:16
DistanceToMaskBoundaryxThreadStruct
Definition: DistanceToMaskBoundaryx.h:12