亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cfileio.h

?? 研讀AxCrypt對加解密的處理方法
?? H
字號:
#ifndef CFILEIO_H
#define CFILEIO_H
/*! \file CFileIO.h
    \brief Regular Win32 File IO Source and Sink, AxPipe::CSourceFileIO and AxPipe::CSinkFileIO

    @(#) $Id$

    AxPipe - Binary Stream Framework

    Copyright (C) 2005 Svante Seleborg/Axon Data, All rights reserved.

    This program is free software; you can redistribute it and/or modify it under the terms
    of the GNU General Public License as published by the Free Software Foundation;
    either version 2 of the License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
    without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    See the GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along with this program;
    if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
    Boston, MA 02111-1307 USA

    The author may be reached at mailto:axpipe@axondata.se and http://axpipe.sourceforge.net

    Why is this framework released as GPL and not LGPL? See http://www.gnu.org/philosophy/why-not-lgpl.html

----
\verbatim
    CFileIO.h                       Win32 File IO Source and Sink

    E-mail                          YYYY-MM-DD              Reason
    axpipe@axantum.com              2005-05-18              Initial
\endverbatim

    AxPipe file source and sink classes, implemented using regular Win32 IO

    C[T]SourceFileIO  - a source [in it's own thread]
    C[T]SinkFileIO   - a sink [in it's own thread]

    Copyright 2005, Axon Data/Svante Seleborg, All Rights Reserved.
*/
#include    "AxPipe.h"

#include "AxAssert.h"
#define AXLIB_ASSERT_FILE "CFileIO.h"

namespace AxPipe {
    class CSinkFileIO;                      // Forward
    /// \brief A CSource providing data from a file system file, using Win32 File IO
    class CSourceFileIO : public CSource {
        HANDLE m_hFile;                     ///< The opened file
        size_t m_cbChunk;                   ///< The chunk size we send down stream
        longlong m_cbFileSize,              ///< The length of the file in bytes
                m_cbStreamPos;              ///< The next file position to read a chunk from
        _TCHAR *m_szFileName;               ///< The provided file name, new[]'d and delete[]'d here

    protected:
        HANDLE GetHandle();                 ///< Get the handle to the opened file
        /// \brief Get the size of the opened file
        /// \return The size in bytes of the opened file
        longlong FileSize() { return m_cbFileSize; }

    public:
        /// \brief Set file and chunk size
        CSourceFileIO *Init(const _TCHAR *szFileName, size_t cbChunk = 64*1024);
        /// \brief Use an open sink as the source instead. Must be used in/before OutClose() of the sink
        CSourceFileIO *Init(CSinkFileIO *pSink, size_t cbChunk = 64*1024);
        CSourceFileIO();                    ///< Just initialize member variables
        virtual ~CSourceFileIO();           ///< Additional destruction necessary...
        const _TCHAR *GetFilePath();        ///< Get the used file path

    protected:
        bool OutOpen();                     ///< Open the file
        bool OutClose(void);                ///< Close the file
        CSeg *In();                         ///< Get the next chunk from the input file
    };

    /// \brief A Threaded version of CSourceFileIO for convenience.
    typedef CThread<CSourceFileIO> CTSourceFileIO;

    /// \brief A CSink implemented with a Win32 file as the destination.
    class CSinkFileIO : public CSink {
        friend CSourceFileIO;

        HANDLE m_hFile;                     ///< The opened file
        size_t m_cbChunk;                   ///< The chunk size we send down stream
        _TCHAR *m_szFileName;               ///< The provided file name, new[]'d and delete[]'d here
        longlong m_cbOutPos;                ///< The file pointer position to write the next output to

    protected:
        HANDLE GetHandle();                 ///< Get the handle to the opened file
        void SetFilePos(longlong i);        ///< Set the file pointer. Do not truncate.
        void SetFileEnd();                  ///< Truncate the file at the current position.
        longlong FileSize();                ///< Get the size of the file

    public:
        /// \brief Set file and chunk size
        CSinkFileIO *Init(const TCHAR *szFileName, size_t cbChunk = 64*1024);
        CSinkFileIO();                      ///< Initialize member variables etc.
        virtual ~CSinkFileIO();             ///< Additional destruction necessary...
        const _TCHAR *GetFilePath();        ///< Get the used file path

    protected:
        bool OutClose();                    ///< Close the file, set end of file etc.
        void Out(CSeg *pSeg);               ///< Write a segment to the file, optimizing the case where it already is a mapping.
        bool OutOpen();                     ///< Open the file named in Init() for output
    };

    /// \brief A threaded version of CSinkFileIO for convenience.
    typedef CThread<CSinkFileIO> CTSinkFileIO;

} // namespace AxPipe
#endif  CFILEIO_H

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩精品三区| 精品系列免费在线观看| 日韩精品免费专区| 国产一区二区不卡| 9人人澡人人爽人人精品| 欧美午夜电影网| 久久久久久久免费视频了| 亚洲精品美腿丝袜| 久久99精品一区二区三区| 成人中文字幕在线| 欧美日韩电影在线| 国产天堂亚洲国产碰碰| 亚洲一区免费在线观看| 久久激情五月激情| 色综合天天综合网天天狠天天| 欧美三级中文字幕在线观看| 久久久不卡网国产精品二区| 亚洲一区二区三区免费视频| 国产精品一区二区黑丝| 欧美日韩免费一区二区三区| 久久久久久麻豆| 五月婷婷久久丁香| 99久久久国产精品| 精品av久久707| 亚洲一区在线视频| 成人app在线观看| 欧美一级淫片007| 亚洲视频电影在线| 国产美女娇喘av呻吟久久| 欧美亚洲精品一区| 国产精品麻豆网站| 另类欧美日韩国产在线| 在线视频你懂得一区| 国产色综合久久| 日韩二区在线观看| 97se亚洲国产综合在线| 久久综合九色综合欧美就去吻| 亚洲美女视频在线观看| 国产999精品久久| 日韩女优毛片在线| 亚洲精品高清在线观看| 国产成人精品免费一区二区| 这里只有精品免费| 夜夜嗨av一区二区三区网页 | 色久优优欧美色久优优| 久久久国产精品麻豆| 美女久久久精品| 欧美男女性生活在线直播观看| 日韩久久一区二区| 波多野洁衣一区| 久久久国产精品麻豆| 久久国产精品99久久久久久老狼| 欧美色图12p| 一区二区三区欧美| 99热精品国产| 亚洲欧洲日产国码二区| 国产电影精品久久禁18| 26uuu亚洲综合色欧美| 蜜臀99久久精品久久久久久软件| 欧美日韩精品高清| 亚洲午夜在线视频| 在线看国产一区| 亚洲最快最全在线视频| 色噜噜狠狠色综合欧洲selulu| 中文字幕在线不卡一区二区三区| 国产成人综合在线播放| 久久久综合九色合综国产精品| 久久福利资源站| 精品国产乱码久久久久久1区2区 | 7777精品伊人久久久大香线蕉 | 欧美丰满一区二区免费视频| 亚洲成人免费观看| 欧美日韩1区2区| 日韩高清在线观看| 日韩欧美一级精品久久| 奇米亚洲午夜久久精品| 欧美一级理论性理论a| 日本欧美韩国一区三区| 91精品国产综合久久蜜臀| 蜜臀久久久99精品久久久久久| 日韩一级高清毛片| 国内成+人亚洲+欧美+综合在线 | 国产91高潮流白浆在线麻豆 | 国产激情视频一区二区三区欧美| 久久女同精品一区二区| 成人在线综合网站| 亚洲视频在线一区| 欧美人xxxx| 久久精品国产免费| 久久久久久久久久电影| 99精品在线免费| 亚洲精品国产精品乱码不99| 欧美日本精品一区二区三区| 老司机精品视频在线| 精品国产欧美一区二区| 国产成a人亚洲| 日韩久久一区二区| 欧美精品亚洲一区二区在线播放| 日韩av一区二| 国产欧美日韩久久| 色综合久久综合网97色综合 | 欧美一区2区视频在线观看| 激情六月婷婷久久| 中文字幕一区二区在线观看| 91国产免费看| 韩国三级在线一区| 亚洲日本在线看| 欧美一级高清片| 成人黄色av网站在线| 亚洲国产综合人成综合网站| 日韩欧美成人一区| 97久久精品人人做人人爽| 午夜不卡av在线| 捆绑变态av一区二区三区| 国产亚洲综合色| 日本韩国精品在线| 久久www免费人成看片高清| 国产精品欧美极品| 91精品国产综合久久香蕉的特点| 国产高清精品在线| 亚洲第一精品在线| 国产午夜精品久久久久久免费视| 91行情网站电视在线观看高清版| 蜜桃视频在线观看一区二区| 国产精品久久久久久久裸模| 8v天堂国产在线一区二区| 福利电影一区二区三区| 亚洲高清不卡在线| 亚洲国产经典视频| 69堂精品视频| av亚洲产国偷v产偷v自拍| 蜜桃av一区二区三区电影| 亚洲色图一区二区| 久久久美女艺术照精彩视频福利播放| 欧美中文字幕久久| 成人综合在线观看| 久草这里只有精品视频| 一区二区三区在线看| 久久久久亚洲蜜桃| 91麻豆精品91久久久久久清纯| 成人影视亚洲图片在线| 免费成人结看片| 亚洲伊人伊色伊影伊综合网| 欧美国产乱子伦 | 久久99热狠狠色一区二区| 亚洲精选在线视频| 国产亚洲欧美在线| 91麻豆精品国产91久久久久久| 成人自拍视频在线| 韩国午夜理伦三级不卡影院| 香蕉影视欧美成人| 亚洲另类一区二区| 欧美激情一区二区三区不卡| 欧美大片一区二区| 日韩一区二区免费视频| 日本道色综合久久| av一区二区三区在线| 国产乱码字幕精品高清av| 蜜臀精品一区二区三区在线观看| 亚洲一线二线三线久久久| 亚洲欧美日韩国产中文在线| 国产精品视频线看| 国产日产精品1区| 精品国产乱码久久久久久蜜臀 | 久久99精品久久久久久动态图 | 91精品国产色综合久久久蜜香臀| 色素色在线综合| 91视频你懂的| 成人app软件下载大全免费| 国产精品综合av一区二区国产馆| 日本sm残虐另类| 日本在线不卡一区| 亚洲成av人片| 日韩高清在线观看| 日韩精品一级二级 | 国产日韩欧美综合一区| 欧美乱妇一区二区三区不卡视频| 色噜噜狠狠色综合欧洲selulu| 成人激情黄色小说| 粉嫩绯色av一区二区在线观看| 国产一区二区不卡| 国产乱码精品一区二区三区忘忧草 | 亚洲二区在线观看| 亚洲成人精品一区| 日韩avvvv在线播放| 蜜臀av一区二区在线观看| 蜜臀久久99精品久久久画质超高清 | 99久久伊人网影院| 波多野结衣欧美| 色综合久久天天| 欧美日韩免费观看一区二区三区 | 天天影视色香欲综合网老头| 亚洲国产成人av网| 日韩综合小视频| 久久aⅴ国产欧美74aaa| 国产一区二区三区久久久 | 亚洲蜜桃精久久久久久久| 依依成人精品视频| 视频一区二区欧美| 久久黄色级2电影|