mtpfws/mtpfw/common/inc/mtpdebug.h
author hgs
Thu, 04 Nov 2010 15:31:42 +0800
changeset 60 841f70763fbe
parent 49 c20dd21d1eb4
permissions -rw-r--r--
201044_04
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     1
// Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     2
// All rights reserved.
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     3
// This component and the accompanying materials are made available
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     5
// which accompanies this distribution, and is available
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     7
//
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     8
// Initial Contributors:
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    10
//
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    11
// Contributors:
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    12
//
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    13
// Description:
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    14
//
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    15
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    16
/**
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    17
 @file
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    18
 @internalComponent
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    19
*/
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    20
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    21
#ifndef MTPDEBUG_H
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    22
#define MTPDEBUG_H
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    23
49
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    24
/*
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    25
 *  Todo: keep these macros temporarily, will discard them at last
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    26
 */
0
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    27
#include <comms-infras/commsdebugutility.h>
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    28
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    29
__FLOG_STMT(_LIT8(KMTPSubsystem, "MTP");)
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    30
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    31
#ifdef __FLOG_ACTIVE
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    32
#define __MTP_HEAP_FLOG \
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    33
    { \
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    34
    TInt allocated; \
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    35
    TInt largest; \
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    36
    TInt available(User::Heap().Available(largest)); \
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    37
    TInt size(User::Heap().Size()); \
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    38
    User::Heap().AllocSize(allocated); \
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    39
    __FLOG_STATIC_VA((KMTPSubsystem, KComponent, _L8("Heap: Size = %d, Allocated = %d, Available = %d, Largest block = %d"), size, allocated, available, largest)); \
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    40
    }
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    41
#else
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    42
#define __MTP_HEAP_FLOG 
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    43
#endif // __FLOG_ACTIVE
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    44
49
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    45
/*
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    46
 * Unlike __FLOG_ACTIVE, every component has its own macro OST_TRACE_COMPILER_IN_USE .
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    47
 * Thus the macro won't be used in this header file.
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    48
 */
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    49
#define __MTP_HEAP_OSTTRACE(r) \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    50
    { \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    51
    TInt allocated; \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    52
    TInt largest; \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    53
    TInt available(User::Heap().Available(largest)); \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    54
    TInt size(User::Heap().Size()); \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    55
    User::Heap().AllocSize(allocated); \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    56
    r;\
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    57
    }
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    58
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    59
#define LEAVEIFERROR(err, trace) \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    60
{ \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    61
TInt munged_err=(err); \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    62
if (munged_err < 0) \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    63
{ \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    64
trace; \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    65
User::Leave(munged_err);\
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    66
}\
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    67
}
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    68
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    69
#define TRACEPANIC(aReason, trace) \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    70
        { \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    71
        tp; \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    72
        User::Panic(KMyCategory, (aReason)); \
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    73
        }
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    74
        
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    75
#if defined(_DEBUG)
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    76
#define __ASSERT_DEBUG_OST(c,trace,p) if(!c) {trace; p;}
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    77
#else
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    78
#define __ASSERT_DEBUG_OST(c,trace,p)
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    79
#endif
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    80
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    81
#define __ASSERT_ALWAYS_OST(c,trace,p) if(!c) {trace; p;}
c20dd21d1eb4 201035_05
hgs
parents: 0
diff changeset
    82
0
d0791faffa3f Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
diff changeset
    83
#endif // MTPDEBUG_H