public JobHandle Schedule(JobHandle dependency) { var handle = m_PadJob.Schedule(dependency); handle.Complete(); handle = m_NewSequence.Schedule(handle); handle = m_CombineJobFloat.Schedule(m_ParallelConvolutionData.OutputImages[0][0].Buffer.Length, 2048, handle); m_JobHandle = handle; return(handle); }
void SetupJobs() { m_ParallelConvolutionData = new ParallelConvolutionData <float>(m_Input, m_ParallelConvolutions); m_PadJob = new ImagePadJob <float>(m_Input, m_PaddedGrayscaleInput, m_Pad); m_JobHandle = m_PadJob.Schedule(); m_JobHandle.Complete(); m_NewSequence = new FloatParallelConvolutionJobs(m_PadJob.Output, m_ParallelConvolutionData, m_JobHandle); var outImages = m_ParallelConvolutionData.OutputImages[0]; m_CombineJobFloat = new SquareCombineJobFloat() { A = outImages[0], B = outImages[1], Output = m_CombinedConvolution, }; }