Home | History | Annotate | Download | only in ipc
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef UI_EVENTS_IPC_LATENCY_INFO_PARAM_TRAITS_H_
      6 #define UI_EVENTS_IPC_LATENCY_INFO_PARAM_TRAITS_H_
      7 
      8 #include "ipc/ipc_message_macros.h"
      9 #include "ui/events/events_export.h"
     10 #include "ui/events/latency_info.h"
     11 
     12 #undef IPC_MESSAGE_EXPORT
     13 #define IPC_MESSAGE_EXPORT EVENTS_EXPORT
     14 
     15 IPC_ENUM_TRAITS_MAX_VALUE(ui::LatencyComponentType,
     16                           ui::LATENCY_COMPONENT_TYPE_LAST)
     17 
     18 IPC_STRUCT_TRAITS_BEGIN(ui::LatencyInfo::LatencyComponent)
     19   IPC_STRUCT_TRAITS_MEMBER(sequence_number)
     20   IPC_STRUCT_TRAITS_MEMBER(event_time)
     21   IPC_STRUCT_TRAITS_MEMBER(event_count)
     22 IPC_STRUCT_TRAITS_END()
     23 
     24 IPC_STRUCT_TRAITS_BEGIN(ui::LatencyInfo::InputCoordinate)
     25 IPC_STRUCT_TRAITS_MEMBER(x)
     26 IPC_STRUCT_TRAITS_MEMBER(y)
     27 IPC_STRUCT_TRAITS_END()
     28 
     29 IPC_STRUCT_TRAITS_BEGIN(ui::LatencyInfo)
     30   IPC_STRUCT_TRAITS_MEMBER(latency_components)
     31   IPC_STRUCT_TRAITS_MEMBER(trace_id)
     32   IPC_STRUCT_TRAITS_MEMBER(terminated)
     33   IPC_STRUCT_TRAITS_MEMBER(input_coordinates_size)
     34   IPC_STRUCT_TRAITS_MEMBER(input_coordinates[0])
     35   IPC_STRUCT_TRAITS_MEMBER(input_coordinates[1])
     36 IPC_STRUCT_TRAITS_END()
     37 
     38 #endif // UI_EVENTS_IPC_LATENCY_INFO_PARAM_TRAITS_H_
     39