Main Content

hdfvs

HDF Vdata 인터페이스의 VS 함수에 대한 게이트웨이

구문

[out1,...,outN] = hdfvs(funcstr,input1,...,inputN)

설명

hdfvs는 HDF Vdata 인터페이스의 VS 함수에 대한 MATLAB® 게이트웨이입니다.

[out1,...,outN] = hdfvs(funcstr,input1,...,inputN)functstr로 지정된 HDF 라이브러리의 VS 함수에 해당하는 하나 이상의 출력을 반환합니다.

HDF 라이브러리의 VS 함수와 funcstr에 대한 유효한 값 사이에는 일대일의 대응 관계가 있습니다. 예를 들어, hdfvs('detach',vdata_id)는 C 라이브러리 호출 VSdetach(vdata_id)에 해당됩니다.

액세스 함수

액세스 함수는 vdata에 대한 액세스를 추가(Attach)합니다. 즉, 액세스를 허용합니다. 데이터 전송은 vdata가 액세스된 이후에만 이루어질 수 있습니다. 또한, 이러한 루틴은 데이터 전송이 완료될 때 vdata에 대한 액세스를 분리(Detach)합니다. 즉, 해당 액세스를 올바르게 종료합니다.

funcstr의 값함수 구문설명
'attach'vdata_id = hdfvs('attach',file_id,vdata_ref,access)지정된 vdata에 대한 액세스를 설정합니다. access'r' 또는 'w'가 될 수 있습니다.
'detach'status = hdfvs('detach',vdata_id)지정된 vdata에 대한 액세스를 종료합니다.

읽기 및 쓰기 함수

읽기 및 쓰기 함수는 vdata의 내용을 읽고 씁니다.

funcstr의 값함수 구문설명
'fdefine'status = hdfvs('fdefine',vdata_id,fieldname,data_type,order)새 vdata 필드를 정의합니다. data_type은 HDF 숫자 유형을 포함하는 문자형 벡터 또는 string형 스칼라입니다. data_type을 다음 값 중 하나로 지정합니다. 'uchar8', 'uchar', 'char8', 'char', 'double', 'uint8', 'uint16', 'uint32', 'float', 'int8', 'int16' 또는 'int32'.
'setclass'status = hdfvs('setclass',vdata_id,class)vdata에 클래스를 할당합니다.
'setfields'status = hdfvs('setfields',vdata_id,fields)기록할 vdata 필드를 지정합니다.
'setinterlace'status = hdfvs('setinterlace',vdata_id,interlace)vdata에 대한 인터레이스 모드를 설정합니다. interlace'full' 또는 'no'가 될 수 있습니다.
'setname'status = hdfvs('setname',vdata_id,name)vdata에 이름을 할당합니다.
'write'count = hdfvs('write', vdata_id, data)vdata에 씁니다. 데이터는 nfields×1 셀형 배열이어야 합니다. 각 셀은 데이터의 order(i)×n 벡터를 포함해야 합니다. 여기서 order(i)는 데이터의 각 필드에 있는 스칼라 값의 개수입니다. 데이터의 형식은 hdfvs('setfields')를 통해 설정되었거나 기존 vdata 필드의 필드 형식과 일치해야 합니다.
'read'[data,count] = hdfvs('read',vdata_id,n)vdata에서 읽습니다. 데이터는 nfields×1 셀형 배열에 담겨 반환됩니다. 각 셀은 order가 각 필드의 스칼라 값 수인 데이터의 order(i)×n 벡터를 포함해야 합니다. 필드는 hdfvs('setfields',...)에 지정된 것과 같은 순서로 반환됩니다.
'seek'pos = hdfvs('seek',vdata_id,record)vdata에 지정된 레코드를 검색합니다.
'setattr'status = hdfvs('setattr',vdata_id,field_index,name,A)vdata 필드 또는 vdata의 특성을 설정합니다.
'setexternalfile'status = hdfvs('setexternalfile',vdata_id,filename,offset)외부 파일에 vdata 정보를 저장합니다.
'getattr'[value,status] = hdfvs('getattr',vdata_id,field_index,attr_index)vdata 또는 vdata 필드에 연결된 특성의 값을 읽습니다. field_index'vdata'로 설정하여 필드 자체에 연결된 특성을 가져옵니다. field_index를 필드의 숫자 인덱스로 설정하여 vdata 필드에 연결된 특성을 가져옵니다.
'setattr'status = hdfvs('setattr',vdata_id,field_index,name,A)vdata 필드 또는 vdata의 특성을 설정합니다. field_index는 인덱스 번호 또는 'vdata'가 될 수 있습니다.

파일 조회 함수

파일 조회 함수는 파일에 vdata가 어떻게 저장되는지에 대한 정보를 제공합니다. 이들 함수는 파일에서 vdata를 찾아내는 데 유용합니다.

funcstr의 값함수 구문설명
'find'vdata_ref = hdfvs('find',file_id,vdata_name)지정된 HDF 파일에서 지정된 vdata 이름을 검색합니다.
'findclass'vdata_ref = hdfvs('findclass',file_id,vdata_class)지정된 vdata 클래스에 대응하는 첫 번째 vdata의 참조 번호를 반환합니다.
'getid'next_ref = hdfvs('getid',file_id,vdata_ref)파일의 다음 vdata 식별자를 반환합니다.
'lone'[refs,count] = hdfvs('lone',file_id,maxsize)vgroup에 연결되지 않은 vdata의 참조 번호를 반환합니다.

데이터 조회 함수

Vdata 조회 함수는 vdata의 이름, 클래스, 필드 수, 레코드 수, 태그와 참조 쌍, 인터레이스 모드 및 크기를 포함하여 지정된 vdata에 대한 특정 정보를 제공합니다.

funcstr의 값함수 구문설명
'fexist'status = hdfvs('fexist',vdata_id,fields)지정된 vdata 내 필드의 존재 여부를 테스트합니다.
'inquire'[n,interlace,fields,nbytes,vdata_name,status] = ... hdfvs('inquire',vdata_id)지정된 vdata에 대한 정보를 반환합니다.
'elts'count = hdfvs('elts',vdata_id)지정된 vdata 내의 레코드 수를 반환합니다.
'getclass'[class_name,status] = hdfvs('getclass',vdata_id)지정된 vdata의 HDF 클래스를 반환합니다.
'getfields'[field_names,count] = hdfvs('getfields',vdata_id)지정된 vdata 내의 모든 필드 이름을 반환합니다.
'getinterlace'[interlace,status] = hdfvs('getinterlace',vdata_id)지정된 vdata의 인터레이스 모드를 가져옵니다.
'getname'[vdata_name,status] = hdfvs('getname',vdata_id)지정된 vdata의 이름을 가져옵니다.
'getversion'version = hdfvs('getversion',vdata_id)vdata의 버전 번호를 반환합니다.
'sizeof'nbytes = hdfvs('sizeof',vdata_id,fields)지정된 vdata의 필드 크기를 반환합니다.
'Queryfields'[fields,status] = hdfvs('Queryfields',vdata_id)지정된 vdata의 필드 이름을 반환합니다.
'Queryname'[name,status] = hdfvs('Queryname',vdata_id)지정된 vdata의 이름을 반환합니다.
'Queryref'ref = hdfvs('Queryref',vdata_id)지정된 vdata의 참조 번호를 가져옵니다.
'Querytag'tag = hdfvs('Querytag',vdata_id)지정된 vdata의 태그를 가져옵니다.
'Querycount'[count,status] = hdfvs('Querycount',vdata_id)지정된 vdata 내의 레코드 수를 반환합니다.
'Queryinterlace'[interlace,status] = hdfvs('Queryinterlace',vdata_id)지정된 vdata의 인터레이스 모드를 반환합니다.
'Queryvsize'vsize = hdfvs('Queryvsize',vdata_id)지정된 vdata 레코드의 로컬 크기를 가져옵니다(단위: 바이트).
'findex'[field_index,status] = hdfvs('findex',vdata_id,fieldname)필드 이름에 지정된 vdata 필드의 인덱스를 쿼리합니다.
'nattrs'count = hdfvs('nattrs',vdata_id)지정된 vdata와 그 안에 포함된 vdata 필드의 특성 수를 반환합니다.
'fnattrs'count = hdfvs('fnattrs',vdata_id,field_index)vdata 특성의 총수를 쿼리합니다.
'findattr'attr_index = hdfvs('findattr',vdata_id,field_index,attr_name)특성 이름에 지정된 특성의 인덱스를 가져옵니다.
'isattr'tf = hdfvs('isattr',vdata_id)지정된 vdata가 특성인지 여부를 확인합니다.
'attrinfo'[name,data_type,count,nbytes,status] = hdfvs('attrinfo',... vdata_id,field_index,attr_index)지정된 vdata 필드 또는 vdata의 이름, 데이터형, 값의 수, 지정된 특성 값 크기를 반환합니다.

출력 인수

status 또는 식별자 출력값이 -1이면 작업이 실패했음을 나타냅니다.

버전 내역

R2006a 이전에 개발됨