JNIEXPORT jint JNICALL Java_ml_dmlc_mxnet_LibInfo_mxNDArraySlice(JNIEnv *env, jobject obj,
                                                                      jobject ndArrayHandle,
                                                                      jint start,
                                                                      jint end,
                                                                      jobject slicedHandle) {
  jclass refLongClass = env->FindClass("ml/dmlc/mxnet/Base$RefLong");
  jfieldID refLongFid = env->GetFieldID(refLongClass, "value", "J");
  jlong ndArrayPtr = env->GetLongField(ndArrayHandle, refLongFid);
  NDArrayHandle out;
  int ret = MXNDArraySlice((NDArrayHandle)ndArrayPtr, start, end, &out);
  env->SetLongField(slicedHandle, refLongFid, (jlong)out);
  return ret;
}
Example #2
0
inline NDArray NDArray::Slice(mx_uint begin, mx_uint end) const {
  NDArrayHandle handle;
  CHECK_EQ(MXNDArraySlice(GetHandle(), begin, end, &handle), 0);
  return NDArray(handle);
}