getCameraList method

List<Pointer<Void>> getCameraList(
  1. Pointer<Void> libraryPointer,
  2. int cameraPosition
)

Implementation

List<Pointer<Void>> getCameraList(Pointer<Void> libraryPointer, int cameraPosition) {
  Pointer<Pointer<Pointer<Void>>> cameraListOut = calloc();
  Pointer<Uint64> cameraListSizeOut = calloc();
  int error = _getCameraList(libraryPointer, cameraPosition, cameraListOut, cameraListSizeOut);
  if( error != FaceCaptureErrorCode.noErrors.value ) {
    throw FaceCaptureException(error);
  }

  Pointer<Pointer<Void>> cameraList = cameraListOut.value;

  List<Pointer<Void>> returnList = <Pointer<Void>>[];

  for( int i = 0; i < cameraListSizeOut.value; ++i ) {
    returnList.add(cameraList.elementAt(i).value);
  }

  calloc.free(cameraListSizeOut);
  calloc.free(cameraListOut);

  return returnList;
}