// VTOKEN.H
//
// Copyright (c) 1997-1999 Symbian Ltd.  All rights reserved.
//
 
#if !defined(__VTOKEN_H__)
#define __VTOKEN_H__

#if !defined(__E32BASE_H__)
#include <e32base.h>
#endif

#define KMaxExternalizedTokenLength		70

#define KVersitTokenColon				_L(":")
#define KVersitTokenSemiColon			_L(";")
#define KVersitTokenBackslash			_L("\\")
#define KVersitTokenEquals				_L("=")
#define KVersitTokenPeriod				_L(".")
#define KVersitTokenComma				_L(",")
#define KVersitTokenSpace				_L(" ")
#define KVersitTokenLSquareBracket		_L("[")
#define KVersitTokenRSquareBracket		_L("]")
#define KVersitTokenMinus				_L("-")
#define KVersitTokenPlus				_L("+")

#define KVersitTimePeriodBegin			_L("P")
#define KVersitTimePeriodYear			_L("Y")
#define KVersitTimePeriodMonth			_L("M")
#define KVersitTimePeriodWeek			_L("W")
#define KVersitTimePeriodDay			_L("D")
#define KVersitTimePeriodTime			_L("T")
#define KVersitTimePeriodHour			_L("H")
#define KVersitTimePeriodMinute			_L("M")
#define KVersitTimePeriodSecond			_L("S")
#define KVersitTokenUniversalTime		_L("Z")

#define KVersitRecurrenceDaily			_L("D")
#define KVersitRecurrenceWeekly			_L("W")
#define KVersitRecurrenceNumberOf		_L("#")

const TUint KVersitTokenColonVal			=':';
const TUint KVersitTokenSemiColonVal		=';';
const TUint KVersitTokenBackslashVal		='\\';
const TUint KVersitTokenEqualsVal			='=';
const TUint KVersitTokenPeriodVal			='.';
const TUint KVersitTokenCommaVal			=',';
const TUint KVersitTokenSpaceVal			=' ';
const TUint KVersitTokenLSquareBracketVal	='[';
const TUint KVersitTokenRSquareBracketVal	=']';
const TUint KVersitTokenMinusVal			='-';
const TUint KVersitTokenPlusVal				='+';

const TUint KVersitTimePeriodBeginVal		='P';
const TUint KVersitTimePeriodYearVal		='Y';
const TUint KVersitTimePeriodMonthVal		='M';
const TUint KVersitTimePeriodWeekVal		='W';
const TUint KVersitTimePeriodDayVal			='D';
const TUint KVersitTimePeriodTimeVal		='T';
const TUint KVersitTimePeriodHourVal		='H';
const TUint KVersitTimePeriodMinuteVal		='M';
const TUint KVersitTimePeriodSecondVal		='S';
const TUint KVersitTokenUniversalTimeVal	='Z';

const TUint KVersitRecurrenceDailyVal		='D';
const TUint KVersitRecurrenceWeeklyVal		='W';
const TUint KVersitRecurrenceNumberOfVal	='#';

#if defined(_UNICODE)
_LIT(KVersitRecurrenceMonthlyByPos,"MP");
_LIT(KVersitRecurrenceMonthlyByDay,"MD");
_LIT(KVersitRecurrenceYearlyByMonth,"YM");
_LIT(KVersitRecurrenceYearlyByDay,"YD");
_LIT(KVersitRecurrenceMonday,"MO");
_LIT(KVersitRecurrenceTuesday,"TU");
_LIT(KVersitRecurrenceWednesday,"WE");
_LIT(KVersitRecurrenceThursday,"TH");
_LIT(KVersitRecurrenceFriday,"FR");
_LIT(KVersitRecurrenceSaturday,"SA");
_LIT(KVersitRecurrenceSunday,"SU");
_LIT(KVersitRecurrenceLastDay,"LD");
#else
#define KVersitRecurrenceMonthlyByPos	_L("MP")
#define KVersitRecurrenceMonthlyByDay	_L("MD")
#define KVersitRecurrenceYearlyByMonth	_L("YM")
#define KVersitRecurrenceYearlyByDay	_L("YD")
#define KVersitRecurrenceMonday			_L("MO")
#define KVersitRecurrenceTuesday		_L("TU")
#define KVersitRecurrenceWednesday		_L("WE")
#define KVersitRecurrenceThursday		_L("TH")
#define KVersitRecurrenceFriday			_L("FR")
#define KVersitRecurrenceSaturday		_L("SA")
#define KVersitRecurrenceSunday			_L("SU")
#define KVersitRecurrenceLastDay		_L("LD")
#endif

_LIT(KVersitTokenBEGIN,"BEGIN");
_LIT(KVersitTokenEND,"END");
#define KVersitTokenCRLF				_L("\r\n") // carriage return, line feed
#define KVersitTokenCRLFWS				_L("\r\n ") // carriage return, line feed, space
_LIT(KVersitTokenXDashEPOC,"X-EPOC");
_LIT(KVersitTokenTRUE,"TRUE");
_LIT(KVersitTokenFALSE,"FALSE");
#if defined(_UNICODE)
_LIT(KVersitTokenXDash,"X-");
#else
#define KVersitTokenXDash				_L("X-")
#endif
#define KVersitTokenEmpty				_L("")

// params
_LIT(KVersitTokenENCODING,"ENCODING");
_LIT(KVersitTokenBASE64,"BASE64");
_LIT(KVersitTokenQUOTEDPRINTABLE,"QUOTED-PRINTABLE");
_LIT(KVersitToken8BIT,"8-BIT");
_LIT(KVersitTokenCHARSET,"CHARSET");

// entities
_LIT(KVersitTokenVCALENDAR,"VCALENDAR");
_LIT(KVersitTokenVCARD,"VCARD");
_LIT(KVersitTokenENDVCARD,"END:VCARD");
_LIT(KVersitTokenVEVENT,"VEVENT");
_LIT(KVersitTokenVTODO,"VTODO");

// properties
_LIT(KVersitTokenAALARM,"AALARM");
_LIT(KVersitTokenDALARM,"DALARM");
_LIT(KVersitTokenPALARM,"PALARM");
_LIT(KVersitTokenMALARM,"MALARM");
_LIT(KVersitTokenDAYLIGHT,"DAYLIGHT");
_LIT(KVersitTokenVERSION,"VERSION");
_LIT(KVersitTokenCATEGORIES,"CATEGORIES");
_LIT(KVersitTokenRESOURCES,"RESOURCES");
_LIT(KVersitTokenDCREATED,"DCREATED");
_LIT(KVersitTokenDTSTART,"DTSTART");
_LIT(KVersitTokenDTEND,"DTEND");
_LIT(KVersitTokenLASTMODIFIED,"LAST-MODIFIED");
_LIT(KVersitTokenCOMPLETED,"COMPLETED");
_LIT(KVersitTokenDUE,"DUE");
_LIT(KVersitTokenEXDATE,"EXDATE");
_LIT(KVersitTokenEXRULE,"EXRULE");
_LIT(KVersitTokenRDATE,"RDATE");
_LIT(KVersitTokenRRULE,"RRULE");
_LIT(KVersitTokenRNUM,"RNUM");
_LIT(KVersitTokenPRIORITY,"PRIORITY");
_LIT(KVersitTokenSEQUENCE,"SEQUENCE");
_LIT(KVersitTokenTRANSP,"TRANSP");
_LIT(KVersitTokenBDAY,"BDAY");
_LIT(KVersitTokenAGENT,"AGENT");
_LIT(KVersitTokenLABEL,"LABEL");
_LIT(KVersitTokenPHOTO,"PHOTO");
_LIT(KVersitTokenEMAIL,"EMAIL");
_LIT(KVersitTokenINTERNET,"INTERNET");
_LIT(KVersitTokenTITLE,"TITLE");
_LIT(KVersitTokenROLE,"ROLE");
_LIT(KVersitTokenLOGO,"LOGO");
_LIT(KVersitTokenNOTE,"NOTE");
_LIT(KVersitTokenSOUND,"SOUND");
_LIT(KVersitTokenMAILER,"MAILER");
_LIT(KVersitTokenPRODID,"PRODID");
_LIT(KVersitTokenATTACH,"ATTACH");
_LIT(KVersitTokenATTENDEE,"ATTENDEE");
_LIT(KVersitTokenCLASS,"CLASS");
_LIT(KVersitTokenDESCRIPTION,"DESCRIPTION");
_LIT(KVersitTokenLOCATION,"LOCATION");
_LIT(KVersitTokenRELATEDTO,"RELATED-TO");
_LIT(KVersitTokenSTATUS,"STATUS");
_LIT(KVersitTokenSUMMARY,"SUMMARY");
#define KVersitTokenN					_L("N")
#if defined(_UNICODE)
_LIT(KVersitTokenTZ,"TZ");
_LIT(KVersitTokenADR,"ADR");
_LIT(KVersitTokenORG,"ORG");
_LIT(KVersitTokenREV,"REV");
_LIT(KVersitTokenFN,"FN");
_LIT(KVersitTokenTEL,"TEL");
_LIT(KVersitTokenFAX,"FAX");
_LIT(KVersitTokenURL,"URL");
_LIT(KVersitTokenGEO,"GEO");
_LIT(KVersitTokenUID,"UID");
_LIT(KVersitTokenKEY,"KEY");
#else
#define KVersitTokenTZ					_L("TZ")
#define	KVersitTokenADR					_L("ADR")
#define	KVersitTokenORG					_L("ORG")
#define	KVersitTokenREV					_L("REV")
#define KVersitTokenFN					_L("FN")
#define KVersitTokenTEL					_L("TEL")
#define KVersitTokenFAX					_L("FAX")
#define KVersitTokenURL					_L("URL")
#define KVersitTokenGEO					_L("GEO")
#define KVersitTokenUID					_L("UID")
#define KVersitTokenKEY					_L("KEY")
#endif

#endif
