DRAFT
LIST OF EXAMPLES
14.8 Implementation and use of a map point to cell worklet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
14.9 Implementation and use of a map cell to point worklet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
14.10Using WholeArrayIn to access a lookup table in a worklet. . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
14.11Using AtomicArrayInOut to count histogram bins in a worklet. . . . . . . . . . . . . . . . . . . . . . . . . 158
14.12Using WholeCellSetIn to sum the angles around each point. . . . . . . . . . . . . . . . . . . . . . . . . . 159
14.13Using ExecObject to access a lookup table in a worklet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
14.14Declaration of a scatter type in a worklet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
14.15Using ScatterUniform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
14.16Using ScatterCounting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
14.17Raising an error in the execution environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
15.1 Header declaration for a field filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
15.2 Implementation of a field filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
15.3 Header declaration for a field filter using cell topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
15.4 Implementation of a field filter using cell topology. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
16.1 Creating a Matrix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
16.2 Using NewtonsMethod to solve a small system of nonlinear equations. . . . . . . . . . . . . . . . . . . . . . 180
17.1 Using CellShapeIdToTag. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
17.2 Using CellTraits to implement a polygon normal estimator. . . . . . . . . . . . . . . . . . . . . . . . . . 185
17.3 Interpolating field values to a cell’s center. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
17.4 Computing the derivative of the field at cell centers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
17.5 Using cell edge functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
17.6 Using cell face functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
18.1 Contents of the base header for a device adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
18.2 Implementation of a device adapter tag. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
18.3 Prototype for vtkm::cont::internal::ArrayManagerExecution. . . . . . . . . . . . . . . . . . . . . . . . 196
18.4 Specialization of ArrayManagerExecution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
18.5 Minimal specialization of DeviceAdapterAlgorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
18.6 Specialization of DeviceAdapterTimerImplementation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
20.1 Declaring vtkm::internal::FunctionInterface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
20.2 Using vtkm::internal::make FunctionInterface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
20.3 Getting the arity of a FunctionInterface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
20.4 Using FunctionInterface::GetParameter(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
20.5 Using FunctionInterface::SetParameter(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
20.6 Invoking a FunctionInterface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
20.7 Invoking a FunctionInterface with a transform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
20.8 Getting return value from FunctionInterface safely. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
20.9 Appending parameters to a FunctionInterface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
LIST OF EXAMPLES xvii