📄 msgreader.h
字号:
/* Copyright (C) 2006 Lucas Gomez All Rights Reserved.
*
* This 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 software 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 software; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
* USA.
*/
#ifndef __MSGREADER_H__
#define __MSGREADER_H__
// INCLUDES
#include <e32base.h>
#include <e32std.h>
#include "Decoder.h"
// ENUMERATIONS
// CONSTANTES
// CLASS DECLARATION
/**
* CMsgReader application class.
*/
class CMsgReader
{
public: // Constructors and destructor
/**
* ~CMsgReader
* Virtual Destructor.
*/
virtual ~CMsgReader();
protected: // Constructors
CMsgReader(CMsgHandler* aHandler,InStream* aIS);
public: // class methods
virtual void ReadServerInit()=0;
virtual void ReadMsg()=0;
inline InStream* GetInStream() {return iIS;}
void GetImageBuf(TInt aRequired,TInt aRequested,RBuf8& aBuf);
inline TInt GetBpp() {return iHandler->GetCP()->GetPF()->GetBpp();}
protected:
void ReadSetColourMapEntries();
void ReadBell();
void ReadServerCutText();
void EndMsg();
void ReadFramebufferUpdateStart();
void ReadFramebufferUpdateEnd();
void ReadRect(TInt aX,TInt aY,TInt aW,TInt aH,TEncodings aEncoding);
void ReadCopyRect(TInt aX,TInt aY,TInt aW,TInt aH);
void ReadSetCursor(TInt aHotspotX,TInt aHotspotY,TInt aW,TInt aH);
protected: // member variables
CMsgHandler* iHandler;
InStream* iIS;
RArray<MDecoder*> iDecoders;
TInt iImageBufSize;
TInt iImageBufIdealSize;
RBuf8 iImageBuf;
};
class CMsgReaderV3 : public CMsgReader
{
public: // Constructors and destructor
/**
* ~CMsgReaderV3
* Virtual Destructor.
*/
virtual ~CMsgReaderV3();
public: // Constructors
CMsgReaderV3(CMsgHandler* aHandler,InStream* aIS);
public: // class methods
void ReadServerInit();
void ReadMsg();
void ReadFramebufferUpdate();
private: // member variables
TInt iNUpdateRectsLeft;
};
#endif // __MSGREADER_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -