10#ifndef EIGEN_CXX11_TENSOR_TENSOR_FORWARD_DECLARATIONS_H
11#define EIGEN_CXX11_TENSOR_TENSOR_FORWARD_DECLARATIONS_H
21template<
typename T>
struct MakePointer {
25template<
typename PlainObjectType,
int Options_ = Unaligned,
template <
class>
class MakePointer_ = MakePointer>
class TensorMap;
26template<
typename Scalar_,
int NumIndices_,
int Options_ = 0,
typename IndexType = DenseIndex>
class Tensor;
27template<
typename Scalar_,
typename Dimensions,
int Options_ = 0,
typename IndexType = DenseIndex>
class TensorFixedSize;
28template<
typename PlainObjectType>
class TensorRef;
29template<
typename Derived,
int AccessLevel>
class TensorBase;
31template<
typename NullaryOp,
typename PlainObjectType>
class TensorCwiseNullaryOp;
32template<
typename UnaryOp,
typename XprType>
class TensorCwiseUnaryOp;
33template<
typename BinaryOp,
typename LeftXprType,
typename RightXprType>
class TensorCwiseBinaryOp;
34template<
typename TernaryOp,
typename Arg1XprType,
typename Arg2XprType,
typename Arg3XprType>
class TensorCwiseTernaryOp;
35template<
typename IfXprType,
typename ThenXprType,
typename ElseXprType>
class TensorSelectOp;
36template<
typename Op,
typename Dims,
typename XprType,
template <
class>
class MakePointer_ = MakePointer >
class TensorReductionOp;
37template<
typename XprType>
class TensorIndexTupleOp;
38template<
typename ReduceOp,
typename Dims,
typename XprType>
class TensorTupleReducerOp;
39template<
typename Axis,
typename LeftXprType,
typename RightXprType>
class TensorConcatenationOp;
40template<
typename Dimensions,
typename LeftXprType,
typename RightXprType>
class TensorContractionOp;
41template<
typename TargetType,
typename XprType>
class TensorConversionOp;
42template<
typename Dimensions,
typename InputXprType,
typename KernelXprType>
class TensorConvolutionOp;
43template<
typename FFT,
typename XprType,
int FFTDataType,
int FFTDirection>
class TensorFFTOp;
44template<
typename PatchDim,
typename XprType>
class TensorPatchOp;
45template<DenseIndex Rows, DenseIndex Cols,
typename XprType>
class TensorImagePatchOp;
46template<DenseIndex Planes, DenseIndex Rows, DenseIndex Cols,
typename XprType>
class TensorVolumePatchOp;
47template<
typename Broadcast,
typename XprType>
class TensorBroadcastingOp;
48template<DenseIndex DimId,
typename XprType>
class TensorChippingOp;
49template<
typename NewDimensions,
typename XprType>
class TensorReshapingOp;
50template<
typename XprType>
class TensorLayoutSwapOp;
51template<
typename StartIndices,
typename Sizes,
typename XprType>
class TensorSlicingOp;
52template<
typename ReverseDimensions,
typename XprType>
class TensorReverseOp;
53template<
typename PaddingDimensions,
typename XprType>
class TensorPaddingOp;
54template<
typename Shuffle,
typename XprType>
class TensorShufflingOp;
55template<
typename Str
ides,
typename XprType>
class TensorStridingOp;
56template<
typename StartIndices,
typename StopIndices,
typename Str
ides,
typename XprType>
class TensorStridingSlicingOp;
57template<
typename Str
ides,
typename XprType>
class TensorInflationOp;
58template<
typename Generator,
typename XprType>
class TensorGeneratorOp;
59template<
typename LeftXprType,
typename RightXprType>
class TensorAssignOp;
60template<
typename Op,
typename XprType>
class TensorScanOp;
62template<
typename CustomUnaryFunc,
typename XprType>
class TensorCustomUnaryOp;
63template<
typename CustomBinaryFunc,
typename LhsXprType,
typename RhsXprType>
class TensorCustomBinaryOp;
65template<
typename XprType,
template <
class>
class MakePointer_ = MakePointer>
class TensorEvalToOp;
66template<
typename XprType,
template <
class>
class MakePointer_ = MakePointer>
class TensorForcedEvalOp;
68template<
typename ExpressionType,
typename DeviceType>
class TensorDevice;
69template<
typename Derived,
typename Device>
struct TensorEvaluator;
72struct ThreadPoolDevice;
90template <
typename Device,
typename Expression>
91struct IsVectorizable {
92 static const bool value = TensorEvaluator<Expression, Device>::PacketAccess;
95template <
typename Expression>
96struct IsVectorizable<GpuDevice, Expression> {
97 static const bool value = TensorEvaluator<Expression, GpuDevice>::PacketAccess &&
98 TensorEvaluator<Expression, GpuDevice>::IsAligned;
101template <
typename Expression,
typename Device,
102 bool Vectorizable = IsVectorizable<Device, Expression>::value>
The tensor executor class.
Namespace containing all symbols from the Eigen library.
Definition: AdolcForward:45