8 #include <AdlPrimitives/Math/Math.h>
9 #include <AdlPrimitives/Sort/SortData.h>
10 #include <AdlPrimitives/Scan/PrefixScan.h>
26 template<DeviceType TYPE>
27 class RadixSort : public RadixSortBase
33 const Device* m_deviceData;
34 typename PrefixScan<TYPE>::Data* m_scanData;
40 Data* allocate(const Device* deviceData, int maxSize, Option option = SORT_STANDARD);
43 void deallocate(Data* data);
46 void execute(Data* data, Buffer<SortData>& inout, int n, int sortBits = 32);
50 #include <AdlPrimitives/Sort/RadixSort.inl>
51 #include <AdlPrimitives/Sort/RadixSortHost.inl>