satengine/SatServer/inc/SatSOpcodes.h
changeset 0 ff3b6d0fd310
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/satengine/SatServer/inc/SatSOpcodes.h	Tue Feb 02 01:11:09 2010 +0200
@@ -0,0 +1,284 @@
+/*
+* Copyright (c) 2002-2007 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 data structure and message code
+*                definitions needed by both the server and the client
+*                interfaces at compile time.
+*
+*/
+
+
+#ifndef SATSOPCODES_H
+#define SATSOPCODES_H
+
+//  INCLUDES
+
+#include <e32base.h>
+#include <languages.hrh>    // Contains new language definitions for Series 60.
+
+// CONSTANTS
+// Contains the full path name of the executable to be loaded.
+_LIT( KSatServerNameAndPath, "z:\\sys\\bin\\SatServer.exe" );
+
+// A version must be specified when creating a session with the server.
+const TUint KSatServerMajorVersionNumber = 0;
+const TUint KSatServerMinorVersionNumber = 1;
+const TUint KSatServerBuildVersionNumber = 1;
+
+// Number of message slots
+const TInt KSatMessageSlots = 42;
+
+// Max number of message arguments
+const TInt KSatMaxMessageArguments = 4;
+
+// DATA TYPES
+
+// Operation codes used in message passing between client and server
+enum TSatServerRequest
+    {
+    ESatSNone, // Illegal service request.
+    // Server test commands
+    ESatSDisplayText,
+    ESatSNotifyTest,
+    ESatSNotifyTestCancel,
+    ESatSShutdown,
+    // Proactive commands (asynchronous)
+    ESatSProactiveDisplayText,
+    ESatSProactiveGetInkey,
+    ESatSProactiveGetInput,
+    ESatSProactiveSetUpMenu,
+    ESatSProactiveSelectItem,
+    ESatSProactivePlayTone,
+    ESatSProactiveRefresh,
+    ESatSProactiveQuery, // for Send SM and Set Up Call
+    ESatSProactiveEvent, // for server event notification
+    ESatSProactiveNotification,
+
+    // Envelope commands (synchronous)
+    ESatSActiveMenuSelection,
+
+    // Command responses (synchronous)
+    ESatSProactiveDisplayTextResponse,
+    ESatSProactiveGetInkeyResponse,
+    ESatSProactiveGetInputResponse,
+    ESatSProactiveSetUpMenuResponse,
+    ESatSProactiveSelectItemResponse,
+    ESatSProactivePlayToneResponse,
+    ESatSProactiveQueryResponse,
+    ESatSProactiveEventResponse,
+    ESatSProactiveNotificationResponse,
+
+    ESatSProactiveRefreshResponse,
+
+    // Session indicators (for internal use)
+    ESatSOpenUiSubSession,
+    ESatSGetSIMAppStatus,
+    ESatSCloseUiSubSession,
+
+    // Refresh handling
+    ESatSOpenRefreshSubSession,
+    ESatSCloseRefreshSubSession,
+    ESatSRefreshAllowed,
+    ESatSNotifyAllowRefresh,
+    ESatSNotityAllowRefreshCancel,
+    ESatSNotifyRefresh,
+    ESatSCancelNotifyRefresh,
+    ESatSRefreshEFRead,
+
+    // Icon handling
+    ESatSOpenIconSubSession,
+    ESatSCloseIconSubSession,
+    ESatSGetIconInfo,
+    ESatSGetIconInstance,
+    ESatSIconInstanceGot,
+
+    // SetUpIdleMode response
+    ESatSIdleModeResponse,
+
+    ESatSSessionTerminated
+    };
+
+// String array to convert Symbian TLanguage enums to
+// ISO 639-1 language codes.
+//
+// See "http://lcweb.loc.gov/standards/iso639-2/englangn.html"
+typedef const TText*  TLangString;
+struct SLangString
+    {
+    TInt iId;
+    TLangString iString;
+    };
+
+const SLangString KLangStrings[] =
+    {
+    { ELangEnglish,                 _S( "en" ) },
+    { ELangFrench,                  _S( "fr" ) },
+    { ELangGerman,                  _S( "de" ) },
+    { ELangSpanish,                 _S( "es" ) },
+    { ELangItalian,                 _S( "it" ) },
+    { ELangSwedish,                 _S( "sv" ) },
+    { ELangDanish,                  _S( "da" ) },
+    { ELangNorwegian,               _S( "no" ) },
+    { ELangFinnish,                 _S( "fi" ) },
+
+    // Following three languages are not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangAmerican,                _S( "en" ) },
+    { ELangSwissFrench,             _S( "fr" ) },
+    { ELangSwissGerman,             _S( "de" ) },
+
+    { ELangPortuguese,              _S( "pt" ) },
+    { ELangTurkish,                 _S( "tr" ) },
+    { ELangIcelandic,               _S( "is" ) },
+    { ELangRussian,                 _S( "ru" ) },
+    { ELangHungarian,               _S( "hu" ) },
+    { ELangDutch,                   _S( "nl" ) },
+
+    // Following five languages are not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangBelgianFlemish,          _S( "nl" ) },
+    { ELangAustralian,              _S( "en" ) },  // ISO 639-2 "aus"
+    { ELangBelgianFrench,           _S( "fr" ) },
+    { ELangAustrian,                _S( "de" ) },
+    { ELangNewZealand,              _S( "en" ) },
+
+    { ELangInternationalFrench,     _S( "fr" ) },
+    { ELangCzech,                   _S( "cs" ) },
+    { ELangSlovak,                  _S( "sk" ) },
+    { ELangPolish,                  _S( "pl" ) },
+    { ELangSlovenian,               _S( "sl" ) },
+
+    // Following three languages are not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangTaiwanChinese,           _S( "zh" ) },
+    { ELangHongKongChinese,         _S( "zh" ) },
+    { ELangPrcChinese,              _S( "zh" ) },
+
+    { ELangJapanese,                _S( "ja" ) },
+    { ELangThai,                    _S( "th" ) },
+    { ELangAfrikaans,               _S( "af" ) },
+    { ELangAlbanian,                _S( "sq" ) },
+    { ELangAmharic,                 _S( "am" ) },
+
+    { ELangArabic,                  _S( "ar" ) },
+    { ELangArmenian,                _S( "hy" ) },
+    { ELangTagalog,                 _S( "tl" ) },
+    { ELangBelarussian,             _S( "be" ) },
+    { ELangBengali,                 _S( "bn" ) },
+    { ELangBulgarian,               _S( "bg" ) },
+    { ELangBurmese,                 _S( "my" ) },
+    { ELangCatalan,                 _S( "ca" ) },
+    { ELangCroatian,                _S( "hr" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangCanadianEnglish,         _S( "en" ) },
+
+    { ELangInternationalEnglish,    _S( "en" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangSouthAfricanEnglish,     _S( "en" ) },
+
+    { ELangEstonian,                _S( "et" ) },
+    { ELangFarsi,                   _S( "fa" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangCanadianFrench,          _S( "fr" ) },
+
+    { ELangScotsGaelic,             _S( "gd" ) },
+    { ELangGeorgian,                _S( "ka" ) },
+    { ELangGreek,                   _S( "el" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangCyprusGreek,             _S( "el" ) },
+
+    { ELangGujarati,                _S( "gu" ) },
+    { ELangHebrew,                  _S( "he" ) },
+    { ELangHindi,                   _S( "hi" ) },
+    { ELangIndonesian,              _S( "id" ) },
+    { ELangIrish,                   _S( "ga" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangSwissItalian,            _S( "it" ) },
+
+    { ELangKannada,                 _S( "kn" ) },
+    { ELangKazakh,                  _S( "kk" ) },
+    { ELangKhmer,                   _S( "km" ) },
+    { ELangKorean,                  _S( "ko" ) },
+    { ELangLao,                     _S( "lo" ) },
+    { ELangLatvian,                 _S( "lv" ) },
+    { ELangLithuanian,              _S( "lt" ) },
+    { ELangMacedonian,              _S( "mk" ) },
+    { ELangMalay,                   _S( "ms" ) },
+    { ELangMalayalam,               _S( "ml" ) },
+    { ELangMarathi,                 _S( "mr" ) },
+    { ELangMoldavian,               _S( "mo" ) },
+    { ELangMongolian,               _S( "mn" ) },
+    { ELangNorwegianNynorsk,        _S( "nn" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangBrazilianPortuguese,     _S( "pt" ) },
+
+    { ELangPunjabi,                 _S( "pa" ) },
+    { ELangRomanian,                _S( "ro" ) },
+    { ELangSerbian,                 _S( "sr" ) },
+    { ELangSinhalese,               _S( "si" ) },
+    { ELangSomali,                  _S( "so" ) },
+    { ELangInternationalSpanish,    _S( "es" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangLatinAmericanSpanish,    _S( "es" ) },
+
+    { ELangSwahili,                 _S( "sw" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangFinlandSwedish,          _S( "sv" ) },
+
+    { ELangReserved1,               _S( "en" ) },
+    { ELangTamil,                   _S( "ta" ) },
+    { ELangTelugu,                  _S( "te" ) },
+    { ELangTibetan,                 _S( "bo" ) },
+    { ELangTigrinya,                _S( "ti" ) },
+
+    // Following language is not listed in ISO 639-1 specification.
+    // Decisions based on parent language.
+    { ELangCyprusTurkish,           _S( "tr" ) },
+
+    { ELangTurkmen,                 _S( "tk" ) },
+    { ELangUkrainian,               _S( "uk" ) },
+    { ELangUrdu,                    _S( "ur" ) },
+    { ELangReserved2,               _S( "en" ) },
+    { ELangVietnamese,              _S( "vi" ) },
+    { ELangWelsh,                   _S( "cy" ) },
+    { ELangZulu,                    _S( "zu" ) },
+
+    // Series 60 added language codes.
+    { KLangTaiwanEnglish,           _S( "en" ) },
+    { KLangHongKongEnglish,         _S( "en" ) },
+    { KLangPrcEnglish,              _S( "en" ) },
+    { KLangJapaneseEnglish,         _S( "en" ) },
+    { KLangThaiEnglish,             _S( "en" ) },
+    };
+
+#define KNUMLANGSTRINGS ( sizeof( KLangStrings ) / sizeof( SLangString ) )
+
+#endif      // SATSOPCODES_H
+
+// End of File