MEM – 인메모리 래스터

드라이버 단축 이름

MEM

기본 내장 드라이버

이 드라이버는 기본적으로 내장되어 있습니다.

GDAL은 래스터를 임시 인메모리(in-memory) 포맷으로 가지고 있을 수 있는 기능을 지원합니다. 이 포맷은 스크립트로 되어 있는 또는 응용 프로그램 내부의 임시 데이터셋에 가장 유용합니다. 일반적으로 응용 프로그램 종단 사용자에게는 아무 쓸모도 없는 포맷입니다.

인메모리 데이터셋은 메타데이터, 좌표계, 지리참조, GCP, 색상 해석, NODATA, 색상표 및 모든 픽셀 데이터 유형을 포함하는 보조 정보 유형 대부분을 지원해야 합니다.

데이터셋 이름 서식

메모리에 기존 배열을 열 수 있습니다. 이렇게 하려면, 데이터셋 이름을 다음 서식으로 구성하십시오:

MEM:::option=value[,option=value...]

예시:

MEM:::DATAPOINTER=342343408,PIXELS=100,LINES=100,BANDS=3,DATATYPE=Byte,
     PIXELOFFSET=3,LINEOFFSET=300,BANDOFFSET=1,
     GEOTRANSFORM=1.166396e+02/1.861068e-05/0.000000e+00/3.627969e+01/0.000000e+00/-1.861068e-05

또는

MEM:::DATAPOINTER=0x1467BEF0,PIXELS=100,LINES=100,BANDS=3,DATATYPE=Byte,
     PIXELOFFSET=3,LINEOFFSET=300,BANDOFFSET=1,
     GEOTRANSFORM=1.166396e+02/1.861068e-05/0.000000e+00/3.627969e+01/0.000000e+00/-1.861068e-05
  • DATAPOINTER: 첫 번째 밴드의 첫 번째 픽셀의 주소입니다. 이 주소를 16진법 또는 10진법 값으로 표현할 수 있습니다. 16진법 값은 앞에 반드시 ‘0x’를 붙여야만 합니다. 몇몇 구현의 경우 (특히 윈도우 플랫폼) 16진법 포인터 값을 접두어 ‘0x’ 없이 출력하기 때문에, ‘0x’를 반드시 추가해야만 합니다. DATAPOINTER로 사용하기에 적합한 서식으로 문자열을 생성하려면 CPLPrintPointer() 메소드를 사용하면 됩니다.

  • PIXELS: 픽셀 단위 래스터 너비입니다. (필수)

  • LINES: 픽셀 단위 래스터 높이입니다. (필수)

  • BANDS: 밴드 개수입니다. 기본값은 1입니다. (선택 옵션)

  • DATATYPE: GDALGetDataTypeName()이 반환하는 데이터 유형 이름입니다. (예: Byte, Int16) 기본값은 Byte입니다. (선택 옵션)

  • PIXELOFFSET: 동일한 스캔 라인 상에 있는 어떤 픽셀의 시작과 다음 픽셀의 시작 사이의 바이트 단위 오프셋입니다. (선택 옵션)

  • LINEOFFSET: 어떤 스캔 라인의 시작과 다음 스캔 라인의 시작 사이의 바이트 단위 오프셋입니다. (선택 옵션)

  • BANDOFFSET: 어떤 밴드의 시작과 다음 밴드의 시작 사이의 바이트 단위 오프셋입니다.

  • GEOTRANSFORM: 아핀 변환 계수를 설정합니다. ‘/’로 구분된 실수 6개입니다. (선택 옵션)

생성 옵션

어떤 생성 옵션도 지원하지 않습니다.

MEM 포맷은 AddBand() 메소드를 지원하는 몇 안 되는 포맷 가운데 하나입니다. AddBand() 메소드는 기존 인메모리 배열을 참조하기 위해 DATAPOINTER, PIXELOFFSET 및 LINEOFFSET 옵션을 지원합니다.

드라이버 케이퍼빌리티

CreateCopy() 지원

이 드라이버는 GDALDriver::CreateCopy() 작업을 지원합니다.

Create() 지원

이 드라이버는 GDALDriver::Create() 작업을 지원합니다.

지리참조 작업 지원

이 드라이버는 지리참조 작업을 지원합니다.

다중 차원 API 지원

New in version 3.1.

MEM 드라이버는 다중차원 래스터 데이터 모델 을 지원합니다.