//----------------------------------------------------------------------
// Copyright (C) 2008 Electronic Arts    
//----------------------------------------------------------------------

#ifndef JOB_UTIL_SPU_MEMCPY_H
#define JOB_UTIL_SPU_MEMCPY_H

#include "EABase/eabase.h"

#include "job_manager/job_scheduler.h"

namespace EA { namespace Jobs {

    EA::Jobs::JobInstanceHandle AsyncMemCpy(
        EA::Jobs::JobScheduler & js,
        void * dst,
        void const * src,
        size_t size,
        bool allowSleepOn = false,
        JobAffinity affinity = JOB_AFFINITY_ANY,
        JobPriority priority = JOB_PRIORITY_DEFAULT
   );

    EA::Jobs::JobInstanceHandle AsyncMemCpyNotReady(
        EA::Jobs::JobScheduler & js,
        void * dst,
        void const * src,
        size_t size,
        bool allowSleepOn = false,
        JobAffinity affinity = JOB_AFFINITY_ANY,
        JobPriority priority = JOB_PRIORITY_DEFAULT
   );

}}

#endif
