rank pass toy

This commit is contained in:
kalenhaha
2014-04-07 23:25:35 +08:00
parent 40c380e40a
commit a10f594644
32 changed files with 2237 additions and 2146 deletions

View File

@@ -9,44 +9,44 @@
*/
namespace xgboost{
namespace utils{
/*!
* \brief interface of stream I/O, used to serialize model
/*!
* \brief interface of stream I/O, used to serialize model
*/
class IStream{
public:
/*!
/*!
* \brief read data from stream
* \param ptr pointer to memory buffer
* \param size size of block
* \return usually is the size of data readed
*/
virtual size_t Read( void *ptr, size_t size ) = 0;
/*!
virtual size_t Read(void *ptr, size_t size) = 0;
/*!
* \brief write data to stream
* \param ptr pointer to memory buffer
* \param size size of block
*/
virtual void Write( const void *ptr, size_t size ) = 0;
virtual void Write(const void *ptr, size_t size) = 0;
/*! \brief virtual destructor */
virtual ~IStream( void ){}
virtual ~IStream(void){}
};
/*! \brief implementation of file i/o stream */
class FileStream: public IStream{
class FileStream : public IStream{
private:
FILE *fp;
public:
FileStream( FILE *fp ){
public:
FileStream(FILE *fp){
this->fp = fp;
}
virtual size_t Read( void *ptr, size_t size ){
return fread( ptr, size, 1, fp );
virtual size_t Read(void *ptr, size_t size){
return fread(ptr, size, 1, fp);
}
virtual void Write( const void *ptr, size_t size ){
fwrite( ptr, size, 1, fp );
virtual void Write(const void *ptr, size_t size){
fwrite(ptr, size, 1, fp);
}
inline void Close( void ){
fclose( fp );
inline void Close(void){
fclose(fp);
}
};
};