epoc32/include/obex/internal/obextransportconstants.h
branchSymbian2
changeset 2 2fe1408b6811
equal deleted inserted replaced
1:666f914201fb 2:2fe1408b6811
       
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #ifndef __OBEXTRANSPORTCONSTANTS_H__
       
    17 #define __OBEXTRANSPORTCONSTANTS_H__
       
    18 
       
    19 /**
       
    20 @file
       
    21 @internalTechnology
       
    22 */
       
    23 
       
    24 #include <e32base.h>
       
    25 
       
    26 const TUint8 KObexConnectionIDLength = 4;
       
    27 
       
    28 typedef TUint16 TObexHeaderMask;
       
    29 typedef TUint8 TObexOpcode;
       
    30 typedef TBuf8<KObexConnectionIDLength> TConnId;
       
    31 typedef TBuf8<16> TNonce;
       
    32 typedef TBuf8<16> TRequestDigest;
       
    33 
       
    34 /**
       
    35 This enum is for INTERNAL USE ONLY.
       
    36 
       
    37 The enum values are signals sent between layers in OBEX. Some of them result 
       
    38 in user-visible notifications and some don't.
       
    39 
       
    40 Their numerical values are not significant, with the exception of the fact 
       
    41 that EObexFinalPacketStarted must have a lower numerical value than 
       
    42 EObexFinalPacketFinished. If both of these signals are outstanding on a packet 
       
    43 at once, the user will be notified in numerical-value order. The 'final packet 
       
    44 observer' API requires that the signals are given to the user in the order 
       
    45 'final packet started' then 'final packet finished'. 
       
    46 
       
    47 These are to be used as fields in a bitmask, so a value must always bit set.
       
    48 */
       
    49 enum TObexPacketProcessEvent
       
    50 	{
       
    51 	/** The transport layer has started to write a final packet. */
       
    52 	EObexFinalPacketStarted = 0x1,
       
    53 
       
    54 	/** The transport layer has finished writing a final packet. */
       
    55 	EObexFinalPacketFinished = 0x2,
       
    56 
       
    57 	/** A packet has finished being written. */
       
    58 	EObexWriteCompleted = 0x4,
       
    59 	
       
    60 	/** A packet has finished being written. This is signalled upwards by the 
       
    61 	transport layer last of all	because it signals the completion of the 
       
    62 	sending of an ACK to a disconnect command. The OBEX server uses this 
       
    63 	signal to progress the disconnection. */
       
    64 	EObexWriteCompletedFinal = 0x8,
       
    65 	
       
    66 	/** Read activity has been detected. This is signalled upwards by the 
       
    67 	transport layer AT LEAST when the first read of a new Obex operation 
       
    68 	is detected.	*/
       
    69 	EObexReadActivityDetected = 0x10,
       
    70 	};
       
    71 
       
    72 typedef TUint TObexPacketProcessEvents;
       
    73 
       
    74 #endif //__OBEXTRANSPORTCONSTANTS_H