/*
* Copyright (c) 2005-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:
* Switches
*
*/
#ifndef __CPROTOCOLTYPE_H__
#define __CPROTOCOLTYPE_H__
/*************************************************************************************
*
* Defines
*
************************************************************************************/
#define MAXVARNAMELEN 60
#define MAXCOMMANDLINELEN 1024
/*************************************************************************************
*
* Types
*
************************************************************************************/
typedef enum {
CMD_REQ_STARTUSECASEID,
CMD_REQ_SIGNALID,
CMD_REQ_RENDEZVOUSID,
CMD_REQ_WAITID,
CMD_REQ_ENDUSECASEID,
CMD_REQ_GETVARIABLENAMEID,
CMD_REQ_RUNCOMMAND,
CMD_REP_STARTUSECASEID,
CMD_REP_SIGNALID,
CMD_REP_RENDEZVOUSID,
CMD_REP_WAITID,
CMD_REP_ENDUSECASEID,
CMD_REP_GETVARIABLENAMEID,
CMD_REP_RUNCOMMAND,
CMD_QUITID,
CMD_UNKNOWN
}TPCommand;
typedef struct {
int iUid;
TPCommand iCmdID;
int iDataLen;
} TPHeader;
/*************************************************************************************
* Request Structs
************************************************************************************/
typedef struct {
int iUsecaseID;
} TStartUsecaseRequest;
typedef struct {
int iUsecaseID;
} TSignalRequest;
typedef struct {
int iUsecaseID;
} TRendezvousRequest;
typedef struct {
int iUsecaseID;
} TWaitRequest;
typedef struct {
int iUsecaseID;
int iResult;
} TEndUsecaseRequest;
typedef struct {
char iVariableName[MAXVARNAMELEN] ;
} TGetVariableNameRequest;
typedef struct {
char iCommandLine[MAXCOMMANDLINELEN] ;
int iResult;
} TRunCommandRequest;
/*************************************************************************************
* Reply Requests
************************************************************************************/
typedef struct {
int iResult;
} TStartUsecaseReply;
typedef struct {
int iResult;
} TSignalReply;
typedef struct {
int iResult;
} TRendezvousReply;
typedef struct {
int iResult;
} TWaitReply;
typedef struct {
int iCommandResult;
int iScriptResult;
} TEndUsecaseReply;
typedef struct {
char iVariableValue[MAXVARNAMELEN] ;
int iResult;
} TGetVariableNameReply;
typedef struct {
int iResult;
} TRunCommandReply;
#endif //__CPROTOCOLTYPE_H__