Go to the documentation of this file.
18 #ifndef viskores_cont_arg_TransportTagArrayInOut_h
19 #define viskores_cont_arg_TransportTagArrayInOut_h
45 template <
typename ContObjectType,
typename Device>
61 using ExecObjectType = decltype(std::declval<ContObjectType>().PrepareForInPlace(
63 std::declval<viskores::cont::Token&>()));
65 template <
typename InputDomainType>
72 if (
object.GetNumberOfValues() != outputRange)
75 "Input/output array to worklet invocation the wrong size.");
78 return object.PrepareForInPlace(Device(), token);
89 #endif //viskores_cont_arg_TransportTagArrayInOut_h
Transport tag for in-place arrays.
Definition: TransportTagArrayInOut.h:41
Class for transporting from the control to the execution environment.
Definition: Transport.h:46
#define VISKORES_IS_ARRAY_HANDLE(T)
Checks that the given type is a viskores::cont::ArrayHandle.
Definition: ArrayHandle.h:145
#define viskoresNotUsed(parameter_name)
Simple macro to identify a parameter as unused.
Definition: ExportMacros.h:136
ExecObjectType operator()(ContObjectType &object, const InputDomainType &, viskores::Id, viskores::Id outputRange, viskores::cont::Token &token) const
Definition: TransportTagArrayInOut.h:66
viskores::Int64 Id
Base type to use to index arrays.
Definition: Types.h:235
#define VISKORES_CONT
Definition: ExportMacros.h:65
Groups connected points that have the same field value.
Definition: Atomic.h:27
decltype(std::declval< ContObjectType >().PrepareForInPlace(Device(), std::declval< viskores::cont::Token & >())) ExecObjectType
Definition: TransportTagArrayInOut.h:63
#define VISKORES_DEPRECATED_SUPPRESS_END
Definition: Deprecated.h:132
This class is thrown when a Viskores function or method encounters an invalid value that inhibits pro...
Definition: ErrorBadValue.h:33
A token to hold the scope of an ArrayHandle or other object.
Definition: Token.h:43
#define VISKORES_DEPRECATED_SUPPRESS_BEGIN
Definition: Deprecated.h:131