Loading...
Searching...
No Matches
cuproj::operation< Coordinate, T > Class Template Reference

Base class for all transform operations. More...

Inheritance diagram for cuproj::operation< Coordinate, T >:
cuproj::axis_swap< Coordinate > cuproj::clamp_angular_coordinates< Coordinate, T > cuproj::degrees_to_radians< Coordinate > cuproj::offset_scale_cartesian_coordinates< Coordinate, T > cuproj::transverse_mercator< Coordinate, T >

Public Member Functions

CUPROJ_HOST_DEVICE Coordinate operator() (Coordinate const &c, direction dir) const
 Applies the transform operation to a coordinate.
 
projection_parameters< T > setup (projection_parameters< T > const &params)
 Modifies the projection parameters for the transform operation.
 

Detailed Description

template<typename Coordinate, typename T = typename Coordinate::value_type>
class cuproj::operation< Coordinate, T >

Base class for all transform operations.

This class is used to define the interface for all transform operations. A transform operation is a function object that takes a coordinate and returns a coordinate. Operations are composed together to form a transform pipeline by cuproj::projection.

Template Parameters
Coordinate
Coordinate::value_type

Definition at line 63 of file operation.cuh.

Member Function Documentation

◆ operator()()

template<typename Coordinate , typename T = typename Coordinate::value_type>
CUPROJ_HOST_DEVICE Coordinate cuproj::operation< Coordinate, T >::operator() ( Coordinate const & c,
direction dir ) const
inline

Applies the transform operation to a coordinate.

Parameters
cCoordinate to transform
dirDirection of transform
Returns
Coordinate

Definition at line 72 of file operation.cuh.

◆ setup()

template<typename Coordinate , typename T = typename Coordinate::value_type>
projection_parameters< T > cuproj::operation< Coordinate, T >::setup ( projection_parameters< T > const & params)
inline

Modifies the projection parameters for the transform operation.

Some (but not all) operations require additional parameters to be set in the projection_params object. This function is called by cuproj::projection::setup() to allow the operation to modify the parameters as needed.

The final project_parameters are passed to every operation in the transform pipeline.

Parameters
paramsProjection parameters
Returns
The modified parameters

Definition at line 86 of file operation.cuh.


The documentation for this class was generated from the following file: