Chinaunix首页 | 论坛 | 博客
  • 博客访问: 610504
  • 博文数量: 262
  • 博客积分: 8433
  • 博客等级: 中将
  • 技术积分: 2141
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-31 09:37
文章分类

全部博文(262)

文章存档

2012年(1)

2011年(168)

2010年(92)

2009年(1)

分类: LINUX

2010-12-09 10:16:14


///////////////////////////////////////////////////////////////////////////

//

// Copyright (c) 2000 Intel Corporation

// All rights reserved.

//

// Redistribution and use in source and binary forms, with or without

// modification, are permitted provided that the following conditions are met:

//

// * Redistributions of source code must retain the above copyright notice,

// this list of conditions and the following disclaimer.

// * Redistributions in binary form must reproduce the above copyright notice,

// this list of conditions and the following disclaimer in the documentation

// and/or other materials provided with the distribution.

// * Neither name of the Intel Corporation nor the names of its contributors

// may be used to endorse or promote products derived from this software

// without specific prior written permission.

//

// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS

// ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT

// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR

// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR

// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,

// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,

// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR

// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY

// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING

// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS

// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

//

///////////////////////////////////////////////////////////////////////////


// $Revision: 1.1.1.1 $

// $Date: 2004/10/19 11:54:08 $


#ifndef GENLIB_UTIL_MEMREADER_H
#define GENLIB_UTIL_MEMREADER_H

#include <genlib/util/util.h>
#include <genlib/meta/stream/charreader.h>

// simulates a character stream from memory

class MemReader : public CharReader
{
public:
    // string s is 'not freed' on destruction

    MemReader( const char* str );
    MemReader( const void* binaryData, int length );
    
    // throws OutOfBoundsException

    char getChar();

    // throws OutOfBoundsException

    void pushBack();
    
    // bufferSize - 1 max string returned; null-terminated

    int read( INOUT void* databuf, IN int bufferSize );
    
    bool endOfStream();
    
private:
    char* buf;
    int index;
    int len;
};


#endif /* GENLIB_UTIL_MEMREADER_H */


文件:upnpsdk-1.0.4.rar
大小:779KB
下载:下载
阅读(538) | 评论(0) | 转发(0) |
0

上一篇:linux 下strftime()的用法

下一篇:TVL

给主人留下些什么吧!~~