Home | History | Annotate | Download | only in common
      1 // Copyright (c) 2012 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 // Singly or Multiply-included shared traits file depending on circumstances.
      6 // This allows the use of IPC serialization macros in more than one IPC message
      7 // file.
      8 #ifndef CONTENT_COMMON_CONTENT_PARAM_TRAITS_MACROS_H_
      9 #define CONTENT_COMMON_CONTENT_PARAM_TRAITS_MACROS_H_
     10 
     11 #include "content/common/content_export.h"
     12 #include "ipc/ipc_message_macros.h"
     13 #include "third_party/WebKit/public/web/WebInputEvent.h"
     14 #include "ui/base/latency_info.h"
     15 #include "webkit/common/resource_type.h"
     16 
     17 #undef IPC_MESSAGE_EXPORT
     18 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT
     19 
     20 IPC_ENUM_TRAITS(ResourceType::Type)
     21 IPC_ENUM_TRAITS(WebKit::WebInputEvent::Type)
     22 IPC_ENUM_TRAITS(ui::LatencyComponentType)
     23 
     24 IPC_STRUCT_TRAITS_BEGIN(ui::LatencyInfo::LatencyComponent)
     25   IPC_STRUCT_TRAITS_MEMBER(sequence_number)
     26   IPC_STRUCT_TRAITS_MEMBER(event_time)
     27   IPC_STRUCT_TRAITS_MEMBER(event_count)
     28 IPC_STRUCT_TRAITS_END()
     29 
     30 IPC_STRUCT_TRAITS_BEGIN(ui::LatencyInfo)
     31   IPC_STRUCT_TRAITS_MEMBER(latency_components)
     32   IPC_STRUCT_TRAITS_MEMBER(swap_timestamp)
     33 IPC_STRUCT_TRAITS_END()
     34 
     35 #endif  // CONTENT_COMMON_CONTENT_PARAM_TRAITS_MACROS_H_
     36