40#ifndef BACKEND_IFACE_H  
   41#define BACKEND_IFACE_H 
   47#define INP_DLLEXPORT __declspec(dllexport) 
   54typedef SSIZE_T ssize_t;
 
   57typedef ssize_t shape_elem_type;
 
   59#include <dpctl_sycl_interface.h> 
   61#include "dpnp_iface_random.hpp" 
   90                                        size_t size_in_bytes);
 
   93INP_DLLEXPORT 
void dpnp_memory_free_c(DPCTLSyclQueueRef q_ref, 
void *ptr);
 
   94INP_DLLEXPORT 
void dpnp_memory_free_c(
void *ptr);
 
   96INP_DLLEXPORT 
void dpnp_memory_memcpy_c(DPCTLSyclQueueRef q_ref,
 
   99                                        size_t size_in_bytes);
 
  101    dpnp_memory_memcpy_c(
void *dst, 
const void *src, 
size_t size_in_bytes);
 
  116template <
typename _DataType>
 
  117INP_DLLEXPORT DPCTLSyclEventRef
 
  123                     const shape_elem_type *shape,
 
  125                     const DPCTLEventVectorRef dep_event_vec_ref);
 
  127template <
typename _DataType>
 
  132                                    const shape_elem_type *shape,
 
  145template <
typename _DataType>
 
  146INP_DLLEXPORT DPCTLSyclEventRef
 
  151                   const DPCTLEventVectorRef dep_event_vec_ref);
 
  153template <
typename _DataType>
 
  154INP_DLLEXPORT 
void dpnp_initval_c(
void *result1, 
void *value, 
size_t size);
 
  167template <
typename _DataType_input, 
typename _DataType_output>
 
  168INP_DLLEXPORT DPCTLSyclEventRef
 
  174                const DPCTLEventVectorRef dep_event_vec_ref);
 
  176template <
typename _DataType_input, 
typename _DataType_output>
 
  191template <
typename _DataType>
 
  192INP_DLLEXPORT DPCTLSyclEventRef
 
  196                const DPCTLEventVectorRef dep_event_vec_ref);
 
  198template <
typename _DataType>
 
  199INP_DLLEXPORT 
void dpnp_ones_c(
void *result, 
size_t size);
 
  210template <
typename _DataType>
 
  211INP_DLLEXPORT DPCTLSyclEventRef
 
  215                     const DPCTLEventVectorRef dep_event_vec_ref);
 
  217template <
typename _DataType>
 
  229template <
typename _DataType>
 
  230INP_DLLEXPORT DPCTLSyclEventRef
 
  234                 const DPCTLEventVectorRef dep_event_vec_ref);
 
  236template <
typename _DataType>
 
  237INP_DLLEXPORT 
void dpnp_zeros_c(
void *result, 
size_t size);
 
  248template <
typename _DataType>
 
  249INP_DLLEXPORT DPCTLSyclEventRef
 
  253                      const DPCTLEventVectorRef dep_event_vec_ref);
 
  255template <
typename _DataType>
 
DPCTLSyclEventRef dpnp_initval_c(DPCTLSyclQueueRef q_ref, void *result1, void *value, size_t size, const DPCTLEventVectorRef dep_event_vec_ref)
implementation of creating filled with value array function
size_t dpnp_queue_is_cpu_c()
SYCL queue device status.
DPCTLSyclEventRef dpnp_zeros_like_c(DPCTLSyclQueueRef q_ref, void *result, size_t size, const DPCTLEventVectorRef dep_event_vec_ref)
Implementation of zeros_like function.
DPCTLSyclEventRef dpnp_ones_c(DPCTLSyclQueueRef q_ref, void *result, size_t size, const DPCTLEventVectorRef dep_event_vec_ref)
Implementation of ones function.
DPCTLSyclEventRef dpnp_ones_like_c(DPCTLSyclQueueRef q_ref, void *result, size_t size, const DPCTLEventVectorRef dep_event_vec_ref)
Implementation of ones_like function.
char * dpnp_memory_alloc_c(DPCTLSyclQueueRef q_ref, size_t size_in_bytes)
SYCL queue memory allocation.
DPCTLSyclEventRef dpnp_modf_c(DPCTLSyclQueueRef q_ref, void *array1_in, void *result1_out, void *result2_out, size_t size, const DPCTLEventVectorRef dep_event_vec_ref)
modf function.
DPCTLSyclEventRef dpnp_zeros_c(DPCTLSyclQueueRef q_ref, void *result, size_t size, const DPCTLEventVectorRef dep_event_vec_ref)
Implementation of zeros function.
DPCTLSyclEventRef dpnp_partition_c(DPCTLSyclQueueRef q_ref, void *array, void *array2, void *result, const size_t kth, const shape_elem_type *shape, const size_t ndim, const DPCTLEventVectorRef dep_event_vec_ref)
Return a partitioned copy of an array.