| 67 | } |
| 68 | |
| 69 | void Transform::Transpose(Image& Source, Image& Dest) |
| 70 | { |
| 71 | if (Dest.Width() < Source.Height() || Dest.Height() < Source.Width()) |
| 72 | throw cl::Error(CL_INVALID_IMAGE_SIZE, "Destination image too small to receive Transform::Transpose"); |
| 73 | |
| 74 | if (!SameType(Source, Dest)) |
| 75 | throw cl::Error(CL_INVALID_VALUE, "Different image types used"); |
| 76 | |
| 77 | if (IsFlushImage(Source)) |
| 78 | { |
| 79 | Kernel_Local(transpose_flush, Source, Dest, Source.Step(), Dest.Step(), Source.Width(), Source.Height()); |
| 80 | } |
| 81 | else |
| 82 | { |
| 83 | Kernel_Local(transpose, Source, Dest, Source.Step(), Dest.Step(), Source.Width(), Source.Height()); |
| 84 | } |
| 85 | |
| 86 | } |
| 87 | |
| 88 | void Transform::Rotate(Image& Source, Image& Dest, |
| 89 | double Angle, double XShift, double YShift, EInterpolationType Interpolation) |
nothing calls this directly
no test coverage detected