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

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

?? bitstrm.h

?? OpenCV1.0 + C++Builder6 example of finding coners programm. Highlites coners it found in frame.
?? H
字號:
/*M///////////////////////////////////////////////////////////////////////////////////////
//
//  IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
//
//  By downloading, copying, installing or using the software you agree to this license.
//  If you do not agree to this license, do not download, install,
//  copy or use the software.
//
//
//                        Intel License Agreement
//                For Open Source Computer Vision Library
//
// Copyright (C) 2000, Intel Corporation, all rights reserved.
// Third party copyrights are property of their respective owners.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
//   * Redistribution's of source code must retain the above copyright notice,
//     this list of conditions and the following disclaimer.
//
//   * Redistribution's 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.
//
//   * The name of Intel Corporation may not 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 the Intel Corporation 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.
//
//M*/

#ifndef _BITSTRM_H_
#define _BITSTRM_H_

#include <stdio.h>
#include <setjmp.h>

#if _MSC_VER >= 1200
    #pragma warning( disable: 4711 )
#endif

#define  RBS_THROW_EOS    -123  /* <end of stream> exception code */
#define  RBS_THROW_FORB   -124  /* <forrbidden huffman code> exception code */
#define  RBS_HUFF_FORB    2047  /* forrbidden huffman code "value" */

typedef unsigned char uchar;
typedef unsigned long ulong;

// class RBaseStream - base class for other reading streams.
class RBaseStream
{
public:
    //methods
    RBaseStream();
    virtual ~RBaseStream();
    
    virtual bool  Open( const char* filename );
    virtual void  Close();
    void          SetBlockSize( int block_size, int unGetsize = 4 );
    bool          IsOpened();
    void          SetPos( int pos );
    int           GetPos();
    void          Skip( int bytes );
    jmp_buf&      JmpBuf();
    
protected:
    
    uchar*  m_start;
    uchar*  m_end;
    uchar*  m_current;
    int     m_unGetsize;
    int     m_block_size;
    int     m_block_pos;
    FILE*   m_file;
    bool    m_is_opened;
    jmp_buf m_jmp_buf;
    bool    m_jmp_set;

    virtual void  ReadBlock();
    virtual void  Release();
    virtual void  Allocate();
};


// class RLByteStream - uchar-oriented stream.
// l in prefix means that the least significant uchar of a multi-uchar value goes first
class RLByteStream : public RBaseStream
{
public:
    virtual ~RLByteStream();
    
    int     GetByte();
    void    GetBytes( void* buffer, int count, int* readed = 0 );
    int     GetWord();
    int     GetDWord(); 
};

// class RMBitStream - uchar-oriented stream.
// m in prefix means that the most significant uchar of a multi-uchar value go first
class RMByteStream : public RLByteStream
{
public:
    virtual ~RMByteStream();

    int     GetWord();
    int     GetDWord(); 
};

// class RLBitStream - bit-oriented stream.
// l in prefix means that the least significant bit of a multi-bit value goes first
class RLBitStream : public RBaseStream
{
public:
    virtual ~RLBitStream();
    
    void    SetPos( int pos );
    int     GetPos();
    int     Get( int bits );
    int     Show( int bits );
    int     GetHuff( const short* table );
    void    Move( int shift );
    void    Skip( int bytes );
        
protected:
    int     m_bit_idx;
    virtual void  ReadBlock();
};

// class RMBitStream - bit-oriented stream.
// m in prefix means that the most significant bit of a multi-bit value goes first
class RMBitStream : public RLBitStream
{
public:
    virtual ~RMBitStream();
    
    void    SetPos( int pos );
    int     GetPos();
    int     Get( int bits );
    int     Show( int bits );
    int     GetHuff( const short* table );
    void    Move( int shift );
    void    Skip( int bytes );

protected:
    virtual void  ReadBlock();
};


// WBaseStream - base class for output streams
class WBaseStream
{
public:
    //methods
    WBaseStream();
    virtual ~WBaseStream();
    
    virtual bool  Open( const char* filename );
    virtual void  Close();
    void          SetBlockSize( int block_size );
    bool          IsOpened();
    int           GetPos();
    
protected:
    
    uchar*  m_start;
    uchar*  m_end;
    uchar*  m_current;
    int     m_block_size;
    int     m_block_pos;
    FILE*   m_file;
    bool    m_is_opened;
    
    virtual void  WriteBlock();
    virtual void  Release();
    virtual void  Allocate();
};


// class WLByteStream - uchar-oriented stream.
// l in prefix means that the least significant uchar of a multi-byte value goes first
class WLByteStream : public WBaseStream
{
public:
    virtual ~WLByteStream();

    void    PutByte( int val );
    void    PutBytes( const void* buffer, int count );
    void    PutWord( int val );
    void    PutDWord( int val ); 
};


// class WLByteStream - uchar-oriented stream.
// m in prefix means that the least significant uchar of a multi-byte value goes last
class WMByteStream : public WLByteStream
{
public:
    virtual ~WMByteStream();

    void    PutWord( int val );
    void    PutDWord( int val ); 
};


// class WLBitStream - bit-oriented stream.
// l in prefix means that the least significant bit of a multi-bit value goes first
class WLBitStream : public WBaseStream
{
public:
    virtual ~WLBitStream();
    
    int     GetPos();
    void    Put( int val, int bits );
    void    PutHuff( int val, const int* table );
        
protected:
    int     m_bit_idx;
    int     m_val;
    virtual void  WriteBlock();
};


// class WMBitStream - bit-oriented stream.
// l in prefix means that the least significant bit of a multi-bit value goes first
class WMBitStream : public WBaseStream
{
public:
    WMBitStream();
    virtual ~WMBitStream();
    
    bool    Open( const char* filename );
    void    Close();
    virtual void  Flush();

    int     GetPos();
    void    Put( int val, int bits );
    void    PutHuff( int val, const ulong* table );
        
protected:
    int     m_bit_idx;
    ulong   m_pad_val;
    ulong   m_val;
    virtual void  WriteBlock();
    void    ResetBuffer();
};



#define BSWAP(v)    (((v)<<24)|(((v)&0xff00)<<8)| \
                    (((v)>>8)&0xff00)|((unsigned)(v)>>24))

int* bsCreateSourceHuffmanTable( const uchar* src, int* dst, 
                                 int max_bits, int first_bits );
bool bsCreateDecodeHuffmanTable( const int* src, short* dst, int max_size );
bool bsCreateEncodeHuffmanTable( const int* src, ulong* dst, int max_size );

void bsBSwapBlock( uchar *start, uchar *end );
bool bsIsBigEndian( void );

extern const ulong bs_bit_mask[];

#endif/*_BITSTRM_H_*/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产综合久久精品性色| 日韩高清不卡在线| 国产91丝袜在线播放九色| 精品va天堂亚洲国产| 激情综合色综合久久| 久久这里只有精品6| 久久99精品久久只有精品| 欧美大片拔萝卜| 国产一区欧美一区| 日本一区二区三级电影在线观看| 国产精品一级在线| 亚洲色图第一区| 欧美亚洲一区二区在线| 日韩电影在线免费| 久久亚洲精精品中文字幕早川悠里| 狠狠狠色丁香婷婷综合激情| 国产欧美一区二区精品忘忧草| www.性欧美| 午夜影院久久久| 日韩欧美精品在线| 成人国产精品免费观看视频| 综合激情网...| 91麻豆精品国产自产在线观看一区| 日本sm残虐另类| 欧美国产1区2区| 欧美亚洲精品一区| 福利电影一区二区| 伊人开心综合网| 欧美一级日韩免费不卡| 国产成+人+日韩+欧美+亚洲| 亚洲色图欧美偷拍| 91精品啪在线观看国产60岁| 国产福利一区二区| 亚洲与欧洲av电影| 久久久无码精品亚洲日韩按摩| www.欧美日韩国产在线| 日韩成人一区二区| 国产精品视频麻豆| 欧美一区二区三区小说| 不卡av在线网| 蜜桃在线一区二区三区| **欧美大码日韩| 日韩精品一区二区三区swag | 5566中文字幕一区二区电影| 国产老肥熟一区二区三区| 亚洲天堂2016| 国产亚洲一区字幕| 制服丝袜在线91| 91日韩精品一区| 青娱乐精品在线视频| 亚洲视频在线一区| 亚洲精品在线网站| 欧美影视一区二区三区| 国产精品亚洲一区二区三区妖精| 亚洲一区视频在线观看视频| 国产午夜精品在线观看| 欧美老年两性高潮| 欧美中文字幕久久| av在线一区二区三区| 狠狠狠色丁香婷婷综合激情| 日韩专区一卡二卡| 亚洲国产成人91porn| 国产精品美女久久福利网站| 2020日本不卡一区二区视频| 欧美婷婷六月丁香综合色| av一二三不卡影片| 高清国产一区二区三区| 精品在线视频一区| 青青草91视频| 丝袜诱惑制服诱惑色一区在线观看| 亚洲欧美在线高清| 国产欧美日韩亚州综合 | 国产麻豆精品在线观看| 日本一区中文字幕| 日韩vs国产vs欧美| 午夜欧美2019年伦理| 亚洲小说欧美激情另类| 一区二区三区四区不卡在线| 亚洲视频一区二区在线| 国产精品美女久久久久av爽李琼 | 欧美久久久一区| 日本韩国视频一区二区| 色综合色综合色综合色综合色综合| 国产suv精品一区二区883| 国产成人在线色| 国产一区二区精品久久| 国产激情一区二区三区桃花岛亚洲| 久久精品久久久精品美女| 日本vs亚洲vs韩国一区三区二区| 五月激情丁香一区二区三区| 日韩av在线播放中文字幕| 婷婷成人激情在线网| 午夜精品一区二区三区三上悠亚| 国产亚洲福利社区一区| 日韩视频在线一区二区| 久久久精品人体av艺术| 91丨国产丨九色丨pron| 99免费精品在线观看| 中文字幕一区av| 精品国产髙清在线看国产毛片| 99国产精品久久久| 高清在线成人网| 91国在线观看| 午夜av电影一区| 亚洲精品国产精华液| 久久国产尿小便嘘嘘| 1区2区3区国产精品| 亚洲精品日韩一| 天天射综合影视| 美女性感视频久久| 福利一区二区在线| 在线视频欧美区| 欧美一级夜夜爽| 中文字幕一区二区在线播放| 亚洲一区电影777| 精东粉嫩av免费一区二区三区| 国产福利视频一区二区三区| 色综合天天综合| 日韩三级免费观看| 最新久久zyz资源站| 亚洲成人动漫在线观看| 国产乱码精品一区二区三区五月婷| 9l国产精品久久久久麻豆| 欧美日韩在线播放三区| 国产视频一区不卡| 亚洲无人区一区| 国产精品99久| 欧美精品国产精品| 国产精品入口麻豆九色| 日本亚洲最大的色成网站www| 国产一区二区三区在线观看免费 | 香蕉久久夜色精品国产使用方法| 日韩精品电影一区亚洲| 国产91精品一区二区麻豆网站| 972aa.com艺术欧美| 精品入口麻豆88视频| 亚洲免费在线看| 国产一区二区看久久| 欧美日韩一区二区三区不卡| 欧美经典一区二区| 日韩高清不卡一区二区三区| 99re视频这里只有精品| 欧美大片顶级少妇| 亚洲一区二三区| 成人黄页在线观看| 精品91自产拍在线观看一区| 亚洲午夜久久久久久久久电影院 | 丁香天五香天堂综合| 91精品国产乱| 亚洲午夜久久久久久久久久久| 成人免费观看av| 精品国产99国产精品| 天堂一区二区在线免费观看| 色诱亚洲精品久久久久久| 国产日韩高清在线| 国内精品伊人久久久久av一坑 | 日韩一区二区视频| 夜夜精品视频一区二区| 99久久综合国产精品| 久久久99久久| 国产一区高清在线| 日韩一卡二卡三卡| 日欧美一区二区| 欧美日韩在线亚洲一区蜜芽| 亚洲欧美偷拍另类a∨色屁股| 风间由美性色一区二区三区| 久久综合久久综合久久综合| 免费美女久久99| 欧美一区2区视频在线观看| 亚洲成人你懂的| 欧美色手机在线观看| 亚洲精品国产成人久久av盗摄| av综合在线播放| 亚洲欧美在线视频观看| 成年人网站91| 国产精品不卡一区| 成人午夜电影小说| 国产精品久久久久影院老司| 成人福利视频在线| 国产精品沙发午睡系列990531| 国产成人啪午夜精品网站男同| 久久久精品tv| 成人av影视在线观看| 中文字幕五月欧美| 色噜噜狠狠色综合中国| 亚洲第一综合色| 欧美一区二区女人| 久久国产乱子精品免费女| 欧美成人综合网站| 国产一区二区精品久久91| 国产精品原创巨作av| 欧美精品一区二| 国产成人精品三级| 欧美va在线播放| 蜜臀a∨国产成人精品| 亚洲精品一线二线三线无人区| 国产一区二区久久| 亚洲日本一区二区| 欧美精品丝袜中出| 国产精品资源网站|