⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 server.h

📁 如题 就是 这东西 为什么非要我 说到 20个 字 呢 看看这回 够 不
💻 H
字号:
// Server.h
//
// Copyright (c) 1999-2007 Symbian Software Ltd.  All rights reserved.
//
// $Change: 937687 $

#ifndef SERVER_H
#define SERVER_H

// SYSTEM HEADERS
#include <e32base.h>

// needed for creating server thread.
const TUint KDefaultHeapSize = 0x10000;

// reasons for server panic
enum TCountServPanic
    {
    EBadRequest,
    EBadDescriptor,
    EMainSchedulerError,
    ESvrCreateServer,
    ESvrStartServer,
    ECreateTrapCleanup,
    ENotImplementedYet,
    };

//**********************************
//CCountServServer
//**********************************
//The server class; an active object.
//Contains an instance of RServer; a handle to the kernel server representation which is used 
//to receive messages. 

class CCountServServer : public CServer2
    {
public:
    enum {EPriority = 950}; 
public:
    static void New();
    virtual CSession2 *NewSessionL(const TVersion &aVersion, const RMessage2& aMessage) const;
static TInt ThreadFunction(TAny* aStarted);
protected:
    CCountServServer(TInt aPriority);
private:
    TInt    iActive;
    };


//**********************************
//CCountServSession
//**********************************
//This class represents a session in the server.
//CSession::Client() returns the client thread.
//Functions are provided to respond appropriately to client messages.

class CCountServSession : public CSession2
    {
public:
    // construct/destruct
    CCountServSession(CCountServServer* aServer);
    static CCountServSession* NewL(CCountServServer* aServer);
    ~CCountServSession();
    //service request
    virtual void ServiceL(const RMessage2& aMessage);
    void DispatchMessageL(const RMessage2& aMessage);

    //services available to initialize/increase/decrease/reset and return the counter value.
    void Increase();
    void Decrease();
    void IncreaseBy(TInt aValue);
    void DecreaseBy(TInt aValue);
    void CounterValue(const RMessage2& aMessage);
    void Reset();
protected:
    // panic the client
    void PanicClient(const RMessage2& aMessage, TInt aPanic) const;
    // safewrite between client and server
    void Write(const RMessage2& aMessage, const TDesC8& aDes, TInt anOffset = 0);
private:
    CCountServServer* iCountSvr;
    TInt iCount;
    };

//**********************************
//global functions
//**********************************

// function to panic the server
GLREF_C void PanicServer(TCountServPanic aPanic);
// thread function for server
GLREF_C TInt CountServerThread(TAny *);

#endif  // SERVER_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -