public synchronized <T> CLEvent multiply( CLBuffer<T> a, int aRows, int aColumns, CLBuffer<T> b, int bRows, int bColumns, CLBuffer<T> out, //long outRows, long outColumns, CLEvent... eventsToWaitFor) throws CLBuildException { if (a.getElementClass() == Double.class) return multiplyDoubles((CLBuffer<Double>)a, aRows, aColumns, (CLBuffer<Double>)b, bRows, bColumns, (CLBuffer<Double>)out, eventsToWaitFor); if (a.getElementClass() == Float.class) return multiplyFloats((CLBuffer<Float>)a, aRows, aColumns, (CLBuffer<Float>)b, bRows, bColumns, (CLBuffer<Float>)out, eventsToWaitFor); throw new UnsupportedOperationException(); } public synchronized CLEvent multiplyDoubles(
public synchronized <T> CLEvent multiply( CLBuffer<T> a, int aRows, int aColumns, CLBuffer<T> b, int bRows, int bColumns, CLBuffer<T> out, //long outRows, long outColumns, CLEvent... eventsToWaitFor) throws CLBuildException { if (a.getElementClass() == Double.class) return multiplyDoubles((CLBuffer<Double>)a, aRows, aColumns, (CLBuffer<Double>)b, bRows, bColumns, (CLBuffer<Double>)out, eventsToWaitFor); if (a.getElementClass() == Float.class) return multiplyFloats((CLBuffer<Float>)a, aRows, aColumns, (CLBuffer<Float>)b, bRows, bColumns, (CLBuffer<Float>)out, eventsToWaitFor); throw new UnsupportedOperationException(); } public synchronized CLEvent multiplyDoubles(