SeekOrigin由enum改为enum class

This commit is contained in:
hyzboy 2019-05-24 15:34:59 +08:00
parent 5b55c34334
commit 557bd3d734
15 changed files with 27 additions and 26 deletions

View File

@ -56,7 +56,7 @@ namespace hgl
return(in?in->ReadFully(buf,size):-1); return(in?in->ReadFully(buf,size):-1);
} }
virtual int64 Seek(int64 offset,SeekOrigin so=soBegin) virtual int64 Seek(int64 offset,SeekOrigin so=SeekOrigin::Begin)
{ {
return(in?in->Seek(offset,so):-1); return(in?in->Seek(offset,so):-1);
} }

View File

@ -50,7 +50,7 @@ namespace hgl
return(out?out->WriteFully(buf,size):-1); return(out?out->WriteFully(buf,size):-1);
} }
virtual int64 Seek(int64 offset,SeekOrigin so=soBegin) virtual int64 Seek(int64 offset,SeekOrigin so=SeekOrigin::Begin)
{ {
return(out?out->Seek(offset,so):-1); return(out?out->Seek(offset,so):-1);
} }

View File

@ -64,7 +64,7 @@ namespace hgl
virtual bool CanRestart()const{return CanSeek();} ///<文件是否可复位访问 virtual bool CanRestart()const{return CanSeek();} ///<文件是否可复位访问
virtual bool CanSize()const{return(true);} ///<文件是否可取得长度 virtual bool CanSize()const{return(true);} ///<文件是否可取得长度
virtual int64 Seek(int64,SeekOrigin=soBegin); ///<定位访问指针 virtual int64 Seek(int64,SeekOrigin=SeekOrigin::Begin); ///<定位访问指针
virtual int64 Tell()const; ///<取得访问指针位置 virtual int64 Tell()const; ///<取得访问指针位置
virtual int64 GetSize(); ///<取得文件长度 virtual int64 GetSize(); ///<取得文件长度
virtual bool Restart(); ///<复位访问指针 virtual bool Restart(); ///<复位访问指针

View File

@ -39,7 +39,7 @@ namespace hgl
virtual int64 Tell()const; ///<取当前位置 virtual int64 Tell()const; ///<取当前位置
virtual int64 GetSize()const; ///<取得文件长度 virtual int64 GetSize()const; ///<取得文件长度
virtual bool Restart(); ///<复位访问指针 virtual bool Restart(); ///<复位访问指针
virtual int64 Seek(int64,SeekOrigin=soBegin); ///<移动访问指针 virtual int64 Seek(int64,SeekOrigin=SeekOrigin::Begin); ///<移动访问指针
virtual int64 Available()const; ///<剩下的可以不受阻塞访问的字节数 virtual int64 Available()const; ///<剩下的可以不受阻塞访问的字节数

View File

@ -41,7 +41,7 @@ namespace hgl
virtual int64 Tell()const; ///<取当前位置 virtual int64 Tell()const; ///<取当前位置
virtual int64 GetSize()const; ///<取得文件长度 virtual int64 GetSize()const; ///<取得文件长度
virtual bool Restart(); ///<复位访问指针 virtual bool Restart(); ///<复位访问指针
virtual int64 Seek(int64,SeekOrigin=soBegin); ///<移动访问指针 virtual int64 Seek(int64,SeekOrigin=SeekOrigin::Begin); ///<移动访问指针
virtual int64 Available()const{return -1;} ///<可不受影响写入的字节数 virtual int64 Available()const{return -1;} ///<可不受影响写入的字节数
virtual int64 Write(int64,const void *,int64); ///<在指定位置写入指定长度的数据 virtual int64 Write(int64,const void *,int64); ///<在指定位置写入指定长度的数据

View File

@ -29,7 +29,7 @@ namespace hgl
virtual bool Restart()=0; ///<复位访问指针 virtual bool Restart()=0; ///<复位访问指针
virtual int64 Skip(int64)=0; ///<跳过指定字节不访问 virtual int64 Skip(int64)=0; ///<跳过指定字节不访问
virtual int64 Seek(int64,SeekOrigin=soBegin)=0; ///<移动访问指针 virtual int64 Seek(int64,SeekOrigin=SeekOrigin::Begin)=0; ///<移动访问指针
virtual int64 Tell()const=0; ///<返回当前访问位置 virtual int64 Tell()const=0; ///<返回当前访问位置
virtual int64 GetSize()const=0; ///<取得流长度 virtual int64 GetSize()const=0; ///<取得流长度
virtual int64 Available()const=0; ///<剩下的可以不受阻塞访问的字节数 virtual int64 Available()const=0; ///<剩下的可以不受阻塞访问的字节数

View File

@ -115,19 +115,19 @@ namespace hgl
int64 Skip(int64 bytes) int64 Skip(int64 bytes)
{ {
return Seek(bytes,soCurrent); return Seek(bytes,SeekOrigin::Current);
} }
int64 Seek(int64 off,SeekOrigin so) int64 Seek(int64 off,SeekOrigin so)
{ {
if(!CanSeek())return(-1); if(!CanSeek())return(-1);
if(so==soCurrent) if(so==SeekOrigin::Current)
{ {
off+=cur_pos; off+=cur_pos;
} }
else else
if(so==soEnd) if(so==SeekOrigin::End)
{ {
off+=buf_size; off+=buf_size;
} }

View File

@ -194,16 +194,16 @@ namespace hgl
return(true); return(true);
} }
int64 Seek(int64 off,SeekOrigin so=soBegin) override int64 Seek(int64 off,SeekOrigin so=SeekOrigin::Begin) override
{ {
if(!CanSeek())return(-1); if(!CanSeek())return(-1);
if(so==soCurrent) if(so==SeekOrigin::Current)
{ {
off+=cur_pos; off+=cur_pos;
} }
else else
if(so==soEnd) if(so==SeekOrigin::End)
{ {
off+=buf_size; off+=buf_size;
} }

View File

@ -26,7 +26,7 @@ namespace hgl
virtual bool CanSize()const=0; ///<是否可以取得尺寸 virtual bool CanSize()const=0; ///<是否可以取得尺寸
virtual bool Restart()=0; ///<复位访问指针 virtual bool Restart()=0; ///<复位访问指针
virtual int64 Seek(int64,SeekOrigin=soBegin)=0; ///<移动访问指针 virtual int64 Seek(int64,SeekOrigin=SeekOrigin::Begin)=0; ///<移动访问指针
virtual int64 Tell()const=0; ///<返回当前访问位置 virtual int64 Tell()const=0; ///<返回当前访问位置
virtual int64 GetSize()const=0; ///<取得流长度 virtual int64 GetSize()const=0; ///<取得流长度
virtual int64 Available()const=0; ///<剩下的可以不受阻塞写入的字节数 virtual int64 Available()const=0; ///<剩下的可以不受阻塞写入的字节数

View File

@ -40,7 +40,7 @@ namespace hgl
virtual int64 Tell()const; ///<取当前位置 virtual int64 Tell()const; ///<取当前位置
virtual int64 GetSize(); ///<取得文件长度 virtual int64 GetSize(); ///<取得文件长度
virtual bool Restart(); ///<复位访问指针 virtual bool Restart(); ///<复位访问指针
virtual int64 Seek(int64,SeekOrigin=soBegin); ///<移动访问指针 virtual int64 Seek(int64,SeekOrigin=SeekOrigin::Begin); ///<移动访问指针
};//class RandomAccessFile };//class RandomAccessFile
}//namespace io }//namespace io
}//namespace hgl }//namespace hgl

View File

@ -1,4 +1,4 @@
#ifndef HGL_IO_SEEK_ACCESS_INCLUDE #ifndef HGL_IO_SEEK_ACCESS_INCLUDE
#define HGL_IO_SEEK_ACCESS_INCLUDE #define HGL_IO_SEEK_ACCESS_INCLUDE
#include<hgl/type/DataType.h> #include<hgl/type/DataType.h>
@ -6,11 +6,11 @@ namespace hgl
{ {
namespace io namespace io
{ {
enum_int(SeekOrigin) /// 资源偏移方向枚举 enum class SeekOrigin /// 资源偏移方向枚举
{ {
soBegin=0, ///<从资源最开始处开始offset必须大于0。移到资源的offset位置 Begin=0, ///<从资源最开始处开始offset必须大于0。移到资源的offset位置
soCurrent, ///<从资源当前位置开始移到资源的Position+offset位置 Current, ///<从资源当前位置开始移到资源的Position+offset位置
soEnd ///<从资源的结束位置开始offset必须小于0表示结束前的字符数 End ///<从资源的结束位置开始offset必须小于0表示结束前的字符数
};//enum SeekOrigin };//enum SeekOrigin
/** /**
@ -27,7 +27,7 @@ namespace hgl
virtual bool CanSize()const=0; ///<是否可以取得尺寸 virtual bool CanSize()const=0; ///<是否可以取得尺寸
virtual bool Restart()=0; ///<复位访问指针 virtual bool Restart()=0; ///<复位访问指针
virtual int64 Seek(int64,SeekOrigin=soBegin)=0; ///<移动访问指针 virtual int64 Seek(int64,SeekOrigin=SeekOrigin::Begin)=0; ///<移动访问指针
virtual int64 Tell()const=0; ///<返回当前访问位置 virtual int64 Tell()const=0; ///<返回当前访问位置
virtual int64 GetSize()const=0; ///<取得文件长度 virtual int64 GetSize()const=0; ///<取得文件长度
};//class SeekAccess };//class SeekAccess

View File

@ -64,6 +64,7 @@ namespace hgl
virtual F Add(T *value) virtual F Add(T *value)
{ {
if(!value)return(-1);
if(!ResManage<F,T>::Add(id_count,value)) if(!ResManage<F,T>::Add(id_count,value))
return(-1); return(-1);

View File

@ -109,7 +109,7 @@ namespace hgl
{ {
if(!CanSeek())return(-1); if(!CanSeek())return(-1);
return hgl_lseek64(fp,offset,orign); return hgl_lseek64(fp,offset,(int)orign);
} }
int64 FileAccess::Tell()const int64 FileAccess::Tell()const
@ -142,7 +142,7 @@ namespace hgl
{ {
if(!CanRestart())return(false); if(!CanRestart())return(false);
return(Seek(0,soBegin)==0); return(Seek(0,SeekOrigin::Begin)==0);
} }
int64 FileAccess::Read(void *buf,int64 size) int64 FileAccess::Read(void *buf,int64 size)
@ -159,7 +159,7 @@ namespace hgl
int result=hgl_read64(fp,buf,size); int result=hgl_read64(fp,buf,size);
if(result>0) if(result>0)
hgl_lseek64(fp,-result,soCurrent); //回移这个长度 hgl_lseek64(fp,-result,(int)SeekOrigin::Current); //回移这个长度
return result; return result;
} }

View File

@ -52,7 +52,7 @@ namespace hgl
bool FileInputStream::CanSize ()const {return file?file->CanSize():false;} bool FileInputStream::CanSize ()const {return file?file->CanSize():false;}
bool FileInputStream::CanPeek ()const {return file?file->CanPeek():false;} bool FileInputStream::CanPeek ()const {return file?file->CanPeek():false;}
int64 FileInputStream::Skip (int64 bytes) {return file?file->Seek(bytes,soCurrent):-1;} int64 FileInputStream::Skip (int64 bytes) {return file?file->Seek(bytes,SeekOrigin::Current):-1;}
int64 FileInputStream::Tell ()const {return file?file->Tell():-1;} int64 FileInputStream::Tell ()const {return file?file->Tell():-1;}
int64 FileInputStream::GetSize ()const {return file?file->GetSize():-1;} int64 FileInputStream::GetSize ()const {return file?file->GetSize():-1;}
bool FileInputStream::Restart () {return file?file->Restart():false;} bool FileInputStream::Restart () {return file?file->Restart():false;}

View File

@ -49,7 +49,7 @@ namespace hgl
{ {
if(!CanRead())return(-1); if(!CanRead())return(-1);
if(_lseeki64(fp,offset,soBegin)==offset) if(_lseeki64(fp,offset,(int)SeekOrigin::Begin)==offset)
return _read(fp,buf,size); return _read(fp,buf,size);
else else
return -1; return -1;
@ -59,7 +59,7 @@ namespace hgl
{ {
if(!CanWrite())return(-1); if(!CanWrite())return(-1);
if(_lseeki64(fp,offset,soBegin)==offset) if(_lseeki64(fp,offset,(int)SeekOrigin::Begin)==offset)
return _write(fp,buf,size); return _write(fp,buf,size);
else else
return -1; return -1;