uiacceltk/hitchcock/CommonInc/alfmoduletestdefines.h
branchRCL_3
changeset 7 88b23e2e82e1
child 8 46927d61fef3
equal deleted inserted replaced
6:10534483575f 7:88b23e2e82e1
       
     1 /**
       
     2  * @see alfmoduletest.h for class implementations that these defines use.
       
     3  */
       
     4 
       
     5 #ifndef ALF_MODULE_TEST_DEFINES_H
       
     6 #define ALF_MODULE_TEST_DEFINES_H
       
     7 
       
     8 
       
     9 // Informs if module test hooks have been set on.
       
    10 #include "alfmoduletestconf.h"
       
    11 
       
    12 
       
    13 #ifndef USE_MODULE_TEST_HOOKS_FOR_ALF
       
    14     // Use empty defines if module test hook is not set.
       
    15 
       
    16     #define AMT_DATA()
       
    17     #define AMT_FUNC(func)
       
    18     #define AMT_FUNC_EXC(func)
       
    19     #define AMT_FUNC_EXC_RET(ret, func)
       
    20     #define AMT_FUNC_EXC_IF(cond, func)
       
    21     #define AMT_FUNC_EXC_IF_RET(cond, ret, func)
       
    22     #define AMT_INC_COUNTER(member)
       
    23     #define AMT_DEC_COUNTER(member)
       
    24     #define AMT_SET_VALUE(member, val)
       
    25     #define AMT_GET_VALUE(x, member)
       
    26     #define AMT_INC_COUNTER_IF(cond, member)
       
    27     #define AMT_DEC_COUNTER_IF(cond, member)
       
    28     #define AMT_SET_VALUE_IF(cond, member, val)
       
    29     #define AMT_GET_VALUE_IF(cond, x, member)
       
    30     
       
    31     #define AMT_MAP_PTR_TO_KEY_CAST( keyPtr )
       
    32     #define AMT_MAP_CPTR_TO_KEY_CAST( keyCPtr )
       
    33     #define AMT_MAP_APPEND_IF(cond, memberMap, key, defaultValue, type)
       
    34     #define AMT_MAP_APPEND(memberMap, key, defaultValue, type)
       
    35     #define AMT_MAP_APPEND_LINK_IF(cond, memberMap, linkKey, targetKey, type)
       
    36     #define AMT_MAP_APPEND_LINK(memberMap, linkKey, targetKey, type)
       
    37     #define AMT_MAP_APPEND_AND_LINK_IF(cond, memberMap, linkKey, actualKey, defaultValue, type)
       
    38     #define AMT_MAP_APPEND_AND_LINK(memberMap, linkKey, actualKey, defaultValue, type)
       
    39     #define AMT_MAP_SET_VALUE_IF(cond, memberMap, key, value, type)
       
    40     #define AMT_MAP_INC_VALUE_IF(cond, memberMap, key, type)
       
    41     #define AMT_MAP_DEC_VALUE_IF(cond, memberMap, key, type)
       
    42     #define AMT_MAP_SET_VALUE(memberMap, key, value, type)
       
    43     #define AMT_MAP_INC_VALUE(memberMap, key, type)
       
    44     #define AMT_MAP_DEC_VALUE(memberMap, key, type)
       
    45     #define AMT_MAP_APPEND_ACCEPT_IF(cond, memberMap, testType)
       
    46     #define AMT_MAP_APPEND_ACCEPT(memberMap, testType)
       
    47     #define AMT_MAP_RESET_ITEMS(memberMap, defaultValue, type)
       
    48     #define AMT_MAP_RESET(memberMap)
       
    49     
       
    50     #define AMT_PRINT_STATE()
       
    51 
       
    52 #else
       
    53     // Module test hook has been set.
       
    54 
       
    55     #ifndef AMT_CONTROL
       
    56         #error "Error: you need to define AMT_CONTROL macro in your code to be able to use ALF module test system!"
       
    57         // The user have to define AMT_CONTROL, e.g. like this:
       
    58         // #define AMT_CONTROL() static_cast<CAlfModuleTestDataControl*>(Dll::Tls())
       
    59         // or
       
    60         // #define AMT_CONTROL() iMyModuleTestDataControl
       
    61         // etc.
       
    62     #endif // AMT_CONTROL
       
    63 
       
    64 
       
    65     //  *** Use these macros to access global memory chunk
       
    66     
       
    67     
       
    68     // Note: If you read/write a large block of data members, it is advisable not use the AMT_FUNC_EXC() based macros below. 
       
    69     //       Use Lock() and Unlock() around the block explicitely, and use AMT_FUNC() macro.
       
    70     //       That is to avoid unnecessary nested lock-unlock sequences (even if nested locks are working ok).
       
    71     
       
    72     // Note: Be careful not to lock the the mutex for a long time as it will halt other processes if they are using the lock during that time!
       
    73     
       
    74     // Generic macros
       
    75     #define AMT_DATA()                              AMT_CONTROL()->iModuleTestData
       
    76     #define AMT_FUNC(func)                          if (AMT_DATA()->iIsEnabled) {func;}                                         
       
    77     #define AMT_FUNC_EXC(func)                      {AMT_CONTROL()->Lock(); if (AMT_DATA()->iIsEnabled) {func;} AMT_CONTROL()->Unlock();}
       
    78     #define AMT_FUNC_EXC_RET(ret, func)             {AMT_CONTROL()->Lock(); if (AMT_DATA()->iIsEnabled) {ret = func;} AMT_CONTROL()->Unlock();}
       
    79     #define AMT_FUNC_EXC_IF(cond, func)             {AMT_CONTROL()->Lock(); if (AMT_DATA()->iIsEnabled && (cond)) {func;} AMT_CONTROL()->Unlock();}        
       
    80     #define AMT_FUNC_EXC_IF_RET(cond, ret, func)    {AMT_CONTROL()->Lock(); if (AMT_DATA()->iIsEnabled && (cond)) {ret = func;} AMT_CONTROL()->Unlock();}
       
    81     
       
    82     // Single operation macros, that will do lock/unlock.
       
    83     #define AMT_INC_COUNTER(member)                 AMT_FUNC_EXC(AMT_DATA()->member++)
       
    84     #define AMT_DEC_COUNTER(member)                 AMT_FUNC_EXC(AMT_DATA()->member--)
       
    85     #define AMT_SET_VALUE(member, val)              AMT_FUNC_EXC(AMT_DATA()->member=(val))
       
    86     #define AMT_GET_VALUE(x, member)                AMT_FUNC_EXC((x) = AMT_DATA()->member)
       
    87     
       
    88     // Conditional single operation macros, that will do lock/unlock.
       
    89     #define AMT_INC_COUNTER_IF(cond, member)        AMT_FUNC_EXC_IF((cond), AMT_DATA()->member++)
       
    90     #define AMT_DEC_COUNTER_IF(cond, member)        AMT_FUNC_EXC_IF((cond), AMT_DATA()->member--)
       
    91     #define AMT_SET_VALUE_IF(cond, member, val)     AMT_FUNC_EXC_IF((cond), AMT_DATA()->member=(val))
       
    92     #define AMT_GET_VALUE_IF(cond, x, member)       AMT_FUNC_EXC_IF((cond), (x) = AMT_DATA()->member)
       
    93     
       
    94     // Map operation macros, that will do lock/unlock
       
    95     #define AMT_MAP_PTR_TO_KEY_CAST( keyPtr )                                                   reinterpret_cast< TInt >( keyPtr )
       
    96     #define AMT_MAP_CPTR_TO_KEY_CAST( keyCPtr )                                                 AMT_MAP_PTR_TO_KEY_CAST( static_cast< const CBase* >( keyCPtr ) )
       
    97     #define AMT_MAP_APPEND_IF(cond, memberMap, key, defaultValue, type)                         AMT_FUNC_EXC_IF((cond), AMT_DATA()->memberMap.Append(type, key, defaultValue))
       
    98     #define AMT_MAP_APPEND(memberMap, key, defaultValue, type)                                  AMT_MAP_APPEND_IF(ETrue, memberMap, key, defaultValue, type)
       
    99     #define AMT_MAP_APPEND_LINK_IF(cond, memberMap, linkKey, targetKey, type)                   AMT_FUNC_EXC_IF((cond), AMT_DATA()->memberMap.AppendLink(type, linkKey, targetKey))
       
   100     #define AMT_MAP_APPEND_LINK(memberMap, linkKey, targetKey, type)                            AMT_MAP_APPEND_LINK_IF(ETrue, memberMap, linkKey, targetKey, type)
       
   101     #define AMT_MAP_APPEND_AND_LINK_IF(cond, memberMap, linkKey, actualKey, defaultValue, type) AMT_MAP_APPEND_IF(cond, memberMap, actualKey, defaultValue, type ); AMT_MAP_APPEND_LINK_IF(cond, memberMap, linkKey, actualKey, type)
       
   102     #define AMT_MAP_APPEND_AND_LINK(memberMap, linkKey, actualKey, defaultValue, type)          AMT_MAP_APPEND_AND_LINK_IF(ETrue, memberMap, linkKey, actualKey, defaultValue, type)
       
   103     #define AMT_MAP_SET_VALUE_IF(cond, memberMap, key, value, type)                             AMT_FUNC_EXC_IF((cond), AMT_DATA()->memberMap.SetActualValue(type, key, value))
       
   104     #define AMT_MAP_INC_VALUE_IF(cond, memberMap, key, type)                                    AMT_FUNC_EXC_IF((cond && AMT_DATA()->memberMap.FindActual(type, key)), AMT_DATA()->memberMap.SetActualValue(type, key, AMT_DATA()->memberMap.FindActual(type, key)->Value() + 1))
       
   105     #define AMT_MAP_DEC_VALUE_IF(cond, memberMap, key, type)                                    AMT_FUNC_EXC_IF((cond && AMT_DATA()->memberMap.FindActual(type, key)), AMT_DATA()->memberMap.SetActualValue(type, key, AMT_DATA()->memberMap.FindActual(type, key)->Value() - 1))
       
   106     #define AMT_MAP_SET_VALUE(memberMap, key, value, type)                                      AMT_FUNC_EXC_IF(ETrue, AMT_DATA()->memberMap.SetActualValue(type, key, value))
       
   107     #define AMT_MAP_INC_VALUE(memberMap, key, type)                                             AMT_MAP_INC_VALUE_IF(ETrue, memberMap, key, type)              
       
   108     #define AMT_MAP_DEC_VALUE(memberMap, key, type)                                             AMT_MAP_DEC_VALUE_IF(ETrue, memberMap, key, type)
       
   109     #define AMT_MAP_APPEND_ACCEPT_IF(cond, memberMap, testType)                                 AMT_FUNC_EXC_IF((cond), AMT_DATA()->memberMap.AppendAccept(testType))
       
   110     #define AMT_MAP_APPEND_ACCEPT(memberMap, testType)                                          AMT_MAP_APPEND_ACCEPT_IF(ETrue, memberMap, testType)
       
   111     #define AMT_MAP_RESET_ITEMS(memberMap, defaultValue, type)                                  AMT_FUNC_EXC(AMT_DATA()->memberMap.ResetItems(type, defaultValue))
       
   112     #define AMT_MAP_RESET(memberMap)                                                            AMT_FUNC_EXC(AMT_DATA()->memberMap.Reset())
       
   113     
       
   114     #define AMT_PRINT_STATE()   AMT_FUNC_EXC(AMT_DATA()->PrintState())
       
   115 
       
   116 #endif // USE_MODULE_TEST_HOOKS_FOR_ALF
       
   117 
       
   118 
       
   119 // General defines
       
   120 // Text cursor handle is defined as constant because correct handle is not provided
       
   121 // from the window server for render stage.
       
   122 #define AMT_MAP_TEXT_CURSOR_HANDLE 0
       
   123 
       
   124 
       
   125 // Notice: 
       
   126 // Defines below will be empty if module test hook is not set.
       
   127 // If module test hook is set on, then these defines also use functionality defined above.  
       
   128 
       
   129 
       
   130 // Render stage defines
       
   131 
       
   132 #define AMT_MAP_RENDER_STAGE_NODE_CREATED() \
       
   133         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeClient == nodeType && aWindowTreeNode.Window() ), iIntMap, aWindowTreeNode.Window()->Handle(), 0, EAlfModuleTestTypeRenderStageCreateWindow ); \
       
   134         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeClient == nodeType && aWindowTreeNode.Window() ), iIntMap, aWindowTreeNode.Window()->Handle(), 0, EAlfModuleTestTypeRenderStageReleaseWindow ); \
       
   135         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeClient == nodeType && aWindowTreeNode.Window() ), iBoolMap, aWindowTreeNode.Window()->Handle(), EFalse, EAlfModuleTestTypeRenderStageActiveWindow ); \
       
   136         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeClient == nodeType && aWindowTreeNode.Window() ), iSizeMap, aWindowTreeNode.Window()->Handle(), TSize(), EAlfModuleTestTypeRenderStageChangeWindowSize ); \
       
   137         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeClient == nodeType && aWindowTreeNode.Window() ), iPositionMap, aWindowTreeNode.Window()->Handle(), TPoint(), EAlfModuleTestTypeRenderStageChangeWindowPosition ); \
       
   138         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeClient == nodeType && aWindowTreeNode.Window() ), iBoolMap, aWindowTreeNode.Window()->Handle(), EFalse, EAlfModuleTestTypeRenderStageChangeWindowVisibility ); \
       
   139         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeGroup == nodeType && aWindowTreeNode.WindowGroup() ), iIntMap, aWindowTreeNode.WindowGroup()->Identifier(), 0, EAlfModuleTestTypeRenderStageCreateWindowGroup ); \
       
   140         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeGroup == nodeType && aWindowTreeNode.WindowGroup() ), iIntMap, aWindowTreeNode.WindowGroup()->Identifier(), 0, EAlfModuleTestTypeRenderStageReleaseWindowGroup ); \
       
   141         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeStandardTextCursor == nodeType ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeRenderStageChangeTextCursorType ); \
       
   142         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeStandardTextCursor == nodeType ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeRenderStageChangeTextCursorClipRect ); \
       
   143         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeStandardTextCursor == nodeType ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeRenderStageChangeTextCursorFlag ); \
       
   144         AMT_MAP_APPEND_IF( ( MWsWindowTreeNode::EWinTreeNodeStandardTextCursor == nodeType ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeRenderStageChangeTextCursorColor ); \
       
   145         \
       
   146         AMT_MAP_INC_VALUE_IF( ( MWsWindowTreeNode::EWinTreeNodeClient == nodeType && aWindowTreeNode.Window() ), iIntMap, aWindowTreeNode.Window()->Handle(), EAlfModuleTestTypeRenderStageCreateWindow ); \
       
   147         AMT_MAP_INC_VALUE_IF( ( MWsWindowTreeNode::EWinTreeNodeGroup == nodeType && aWindowTreeNode.WindowGroup() ), iIntMap, aWindowTreeNode.WindowGroup()->Identifier(), EAlfModuleTestTypeRenderStageCreateWindowGroup )
       
   148 
       
   149 #define AMT_MAP_RENDER_STAGE_TEXT_CURSOR_CHANGE() \
       
   150         AMT_MAP_INC_VALUE_IF( ( aWindowTreeNode.NodeType() == MWsWindowTreeNode::EWinTreeNodeStandardTextCursor && aAttribute == ECursorType ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeRenderStageChangeTextCursorType ); \
       
   151         AMT_MAP_INC_VALUE_IF( ( aWindowTreeNode.NodeType() == MWsWindowTreeNode::EWinTreeNodeStandardTextCursor && aAttribute == ECursorClipRect ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeRenderStageChangeTextCursorClipRect ); \
       
   152         AMT_MAP_INC_VALUE_IF( ( aWindowTreeNode.NodeType() == MWsWindowTreeNode::EWinTreeNodeStandardTextCursor && aAttribute == ECursorFlags ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeRenderStageChangeTextCursorFlag ); \
       
   153         AMT_MAP_INC_VALUE_IF( ( aWindowTreeNode.NodeType() == MWsWindowTreeNode::EWinTreeNodeStandardTextCursor && aAttribute == ECursorColor ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeRenderStageChangeTextCursorColor )
       
   154 
       
   155 
       
   156 // Streamer defines
       
   157                           
       
   158 #define AMT_MAP_STREAMER_NODE_WINDOW_CONSTRUCT() \
       
   159         AMT_MAP_APPEND_AND_LINK( iIntMap, iId, iNodeWindowConstructionStruct.iWindowHandle, 0, EAlfModuleTestTypeHierarchyModelCreateWindow ); \
       
   160         AMT_MAP_APPEND_AND_LINK( iIntMap, iId, iNodeWindowConstructionStruct.iWindowHandle, 0, EAlfModuleTestTypeHierarchyModelReleaseWindow ); \
       
   161         AMT_MAP_APPEND_AND_LINK( iBoolMap, iId, iNodeWindowConstructionStruct.iWindowHandle, EFalse, EAlfModuleTestTypeHierarchyModelActiveWindow ); \
       
   162         AMT_MAP_APPEND_AND_LINK( iSizeMap, iId, iNodeWindowConstructionStruct.iWindowHandle, TSize(), EAlfModuleTestTypeHierarchyModelChangeWindowSize ); \
       
   163         AMT_MAP_APPEND_AND_LINK( iPositionMap, iId, iNodeWindowConstructionStruct.iWindowHandle, TPoint(), EAlfModuleTestTypeHierarchyModelChangeWindowPosition ); \
       
   164         AMT_MAP_APPEND_AND_LINK( iBoolMap, iId, iNodeWindowConstructionStruct.iWindowHandle, EFalse, EAlfModuleTestTypeHierarchyModelChangeWindowVisibility )
       
   165 
       
   166 #define AMT_MAP_STREAMER_NODE_GROUP_CONSTRUCT() \
       
   167         AMT_MAP_APPEND_AND_LINK( iIntMap, iId, clientHandle, 0, EAlfModuleTestTypeHierarchyModelCreateWindowGroup ); \
       
   168         AMT_MAP_APPEND_AND_LINK( iIntMap, iId, clientHandle, 0, EAlfModuleTestTypeHierarchyModelReleaseWindowGroup )
       
   169 
       
   170 #define AMT_MAP_STREAMER_TEXT_CURSOR_CONSTRUCT() \
       
   171         AMT_MAP_APPEND( iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeHierarchyModelChangeTextCursorType ); \
       
   172         AMT_MAP_APPEND( iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeHierarchyModelChangeTextCursorClipRect ); \
       
   173         AMT_MAP_APPEND( iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeHierarchyModelChangeTextCursorFlag ); \
       
   174         AMT_MAP_APPEND( iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeHierarchyModelChangeTextCursorColor )
       
   175 
       
   176 #define AMT_MAP_STREAMER_TEXT_CURSOR_CHANGE() \
       
   177         AMT_MAP_INC_VALUE_IF( ( attribute == MWsWindowTreeObserver::ECursorType ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeHierarchyModelChangeTextCursorType ); \
       
   178         AMT_MAP_INC_VALUE_IF( ( attribute == MWsWindowTreeObserver::ECursorClipRect ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeHierarchyModelChangeTextCursorClipRect ); \
       
   179         AMT_MAP_INC_VALUE_IF( ( attribute == MWsWindowTreeObserver::ECursorFlags ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeHierarchyModelChangeTextCursorFlag ); \
       
   180         AMT_MAP_INC_VALUE_IF( ( attribute == MWsWindowTreeObserver::ECursorColor ), iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeHierarchyModelChangeTextCursorColor )
       
   181 
       
   182                                  
       
   183 // Alfserver defines
       
   184 
       
   185 #define AMT_MAP_BRIDGE_ADD_VISUAL() \
       
   186         AMT_MAP_APPEND_AND_LINK( iIntMap, aWindowNodeId, aClientSideId, 0, EAlfModuleTestTypeBridgeCreateWindow ); \
       
   187         AMT_MAP_APPEND_AND_LINK( iIntMap, aWindowNodeId, aClientSideId, 0, EAlfModuleTestTypeBridgeReleaseWindow ); \
       
   188         AMT_MAP_APPEND_AND_LINK( iBoolMap, aWindowNodeId, aClientSideId, EFalse, EAlfModuleTestTypeBridgeActiveWindow ); \
       
   189         AMT_MAP_APPEND_AND_LINK( iSizeMap, aWindowNodeId, aClientSideId, TSize(), EAlfModuleTestTypeBridgeChangeWindowSize ); \
       
   190         AMT_MAP_APPEND_AND_LINK( iPositionMap, aWindowNodeId, aClientSideId, TPoint(), EAlfModuleTestTypeBridgeChangeWindowPosition ); \
       
   191         AMT_MAP_APPEND_AND_LINK( iBoolMap, aWindowNodeId, aClientSideId, EFalse, EAlfModuleTestTypeBridgeChangeWindowVisibility ); \
       
   192         \
       
   193         AMT_MAP_APPEND_AND_LINK_IF( aVisual, iIntMap, AMT_MAP_CPTR_TO_KEY_CAST( aVisual ), aClientSideId, 0, EAlfModuleTestTypeCoreToolkitDrawWindow ); \
       
   194         AMT_MAP_APPEND_AND_LINK_IF( aVisual, iIntMap, AMT_MAP_CPTR_TO_KEY_CAST( aVisual ), aClientSideId, 0, EAlfModuleTestTypeCoreToolkitDrawFromRenderBuffer ); \
       
   195         \
       
   196         AMT_MAP_INC_VALUE( iIntMap, aClientSideId, EAlfModuleTestTypeBridgeCreateWindow ); \
       
   197         \
       
   198         AMT_MAP_APPEND( iBoolMap, aClientSideId, ETrue, EAlfModuleTestTypeBridgeCreateWindow ); \
       
   199         AMT_MAP_APPEND( iBoolMap, aClientSideId, EFalse, EAlfModuleTestTypeBridgeVisualVisibility ); \
       
   200         AMT_MAP_APPEND_LINK_IF( aVisual, iBoolMap, AMT_MAP_CPTR_TO_KEY_CAST( aVisual ), aClientSideId, EAlfModuleTestTypeBridgeVisualVisibility ); \
       
   201         AMT_MAP_APPEND( iBoolMap, aClientSideId, EFalse, EAlfModuleTestTypeBridgeReleaseWindow ); \
       
   202         AMT_MAP_APPEND_LINK( iBoolMap, aWindowNodeId, aClientSideId, EAlfModuleTestTypeBridgeReleaseWindow )
       
   203         
       
   204 #define AMT_MAP_BRIDGE_CREATE_CONTROL_GROUP() \
       
   205         AMT_MAP_APPEND_AND_LINK( iIntMap, aWindowGroupNodeId, aClientWindowGroupId, 0, EAlfModuleTestTypeBridgeCreateWindowGroup ); \
       
   206         AMT_MAP_APPEND_AND_LINK( iIntMap, aWindowGroupNodeId, aClientWindowGroupId, 0, EAlfModuleTestTypeBridgeReleaseWindowGroup ); \
       
   207         \
       
   208         AMT_MAP_INC_VALUE( iIntMap, aClientWindowGroupId, EAlfModuleTestTypeBridgeCreateWindowGroup )
       
   209 
       
   210 #define AMT_MAP_BRIDGE_ADD_TEXT_CURSOR() \
       
   211         AMT_MAP_APPEND( iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeBridgeChangeTextCursorType ); \
       
   212         AMT_MAP_APPEND( iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeBridgeChangeTextCursorClipRect ); \
       
   213         AMT_MAP_APPEND( iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeBridgeChangeTextCursorFlag ); \
       
   214         AMT_MAP_APPEND( iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, 0, EAlfModuleTestTypeBridgeChangeTextCursorColor )
       
   215 
       
   216 #define AMT_MAP_BRIDGE_TEXT_CURSOR_CHANGE() \
       
   217         AMT_MAP_INC_VALUE_IF( viz, iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeBridgeChangeTextCursorType ); \
       
   218         AMT_MAP_INC_VALUE_IF( viz, iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeBridgeChangeTextCursorClipRect ); \
       
   219         AMT_MAP_INC_VALUE_IF( viz, iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeBridgeChangeTextCursorFlag ); \
       
   220         AMT_MAP_INC_VALUE_IF( viz, iIntMap, AMT_MAP_TEXT_CURSOR_HANDLE, EAlfModuleTestTypeBridgeChangeTextCursorColor )
       
   221 
       
   222         
       
   223 #endif // ALF_MODULE_TEST_DEFINES_H
       
   224 
       
   225 // End of File