testexecfw/stf/stffw/testengine/inc/SettingServerClientServer.h
author Johnson Ma <johnson.ma@nokia.com>
Fri, 09 Apr 2010 10:46:28 +0800
changeset 2 8bb370ba6d1d
permissions -rw-r--r--
contribute STF 1.0.0

/*
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
* 
* Description: This file contains the header file of the 
* CSettingServer.
*
*/

#ifndef SETTINGSERVERCLIENTSERVER_H
#define SETTINGSERVERCLIENTSERVER_H

//  INCLUDES
#include <e32base.h>

// The server version.
// A version must be specified when creating a session with the server.
const TUint KSettingServerMajorVersionNumber=0;
const TUint KSettingServerMinorVersionNumber=1;
const TUint KSettingServerVersionNumber=1;

// Server heap size
const TUint KDefaultHeapSize = 0x10000;     // 64 K
const TUint KMaxHeapSize     = 0x20000;     // 128 K 

// MACROS
// none

// DATA TYPES

// Panic reasons
enum TSettingServerPanic
    {
    EBadRequest,
    EBadDescriptor,
    EMainSchedulerError,
    ESvrCreateServer,
    ECreateTrapCleanup,
    ENoStartupInformation,
    ETooManyCloseSessions,
    EPopFromEmptyStack
    };

// Opcodes used in message passing between client and server
enum TSettingServerRequests
    {
    // RSettingServer requests
    ESettingServerCloseSession,

    // RLoggerSetting requests
    ELoadLoggerSettingsFromIniFile,
    ELoadLoggerSettingsFromCommandLine,
    EGetLoggerSettings,

    // e.g. SetAttribute requests
    ESetLoggerOutputPath,
    
    // Reset logger settings to default value
    EResetLoggerSettings,
    };

// Struct to pass parameters to server thread
struct TThreadStartSetting
    {
    TFileName  iName;         // Server name
    RThread    iServerThread; // The server thread
    RSemaphore iStarted;      // Startup syncronisation semaphore   
    TInt       iStartupResult;// Start-up result
    };

#endif /* SETTINGSERVERCLIENTSERVER_H */
// End of file