thirdParty/VzNLSDK/Inc/VZNL_FileUtils.h

67 lines
1.8 KiB
C
Raw Normal View History

#pragma once
#include "VZNL_Types.h"
#include "VZNL_Export.h"
/**
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
VZNLAPI EVzLaserFileType VzNL_IsSupportLaserType(const char* lpszFile);
/**
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param [in] eFileType <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* keLaserFileType_PureTxt <EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>
* keLaserFileType_Txt <EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* keLaserFileType_Pcd PCD
* keLaserFileType_Las LAS
* keLaserFileType_VzBinaryData Binary File
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
VZNLAPI VZNLFILE VzNL_CreateLaserFile(EVzLaserFileType eFileType);
/**
* @brief <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param [in] eLaserFileParam <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param [in] pData <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param [in] nDataLength <EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><EFBFBD><EFBFBD>
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ȷ
* @retval 0 <EFBFBD><EFBFBD>ʾ<EFBFBD>ɹ<EFBFBD>
* @retval <EFBFBD><EFBFBD>0 <EFBFBD><EFBFBD>ʾʧ<EFBFBD><EFBFBD>,<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD>VzNL_GetErrorInfo<EFBFBD><EFBFBD>ȡ
*/
VZNLAPI int VzNL_SetLaserFileParam(VZNLFILE hFile, EVzLaserFileParam eLaserFileParam, const unsigned char* pData, unsigned int nDataLength);
/**
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
* @param hFile [in] <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param lpszFile [in] <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>
* @param eFileMode [in] <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
* @param eDataType [in] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param dSpeed [in] <EFBFBD>ٶ<EFBFBD> mm/s
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ȷ
*/
VZNLAPI int VzNL_OpenLaserFile(VZNLFILE hFile, const char* lpszFile, EVzFileMode eFileMode, EVzResultDataType eDataType);
/**
* @brief д<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
* @param hFile [in] <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param psLaserLinePoint [in] <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ȷ
*/
VZNLAPI int VzNL_WriteLaserFile(VZNLFILE hFile, const SVzLaserLineData* psLaserLinePoint);
/**
* @brief <EFBFBD><EFBFBD>ȡ<EFBFBD>ļ<EFBFBD>
* @param hFile [in] <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param pnReadLineCnt [in] <EFBFBD><EFBFBD>ȡ<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>߸<EFBFBD><EFBFBD><EFBFBD>
* @return <EFBFBD><EFBFBD><EFBFBD>ؼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
VZNLAPI SVzLaserLineData* VzNL_ReadLaserFile(VZNLFILE hFile, int* pnReadLineCnt);
/**
* @brief <EFBFBD>ر<EFBFBD><EFBFBD>ļ<EFBFBD>
* @param hFile [in] <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵΪ0<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ȷ
*/
VZNLAPI int VzNL_CloseLaserFile(VZNLFILE hFile);