OLD | NEW |
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_SYNC_UTIL_EVENT_SYS_INL_H_ | 5 #ifndef CHROME_BROWSER_SYNC_UTIL_EVENT_SYS_INL_H_ |
6 #define CHROME_BROWSER_SYNC_UTIL_EVENT_SYS_INL_H_ | 6 #define CHROME_BROWSER_SYNC_UTIL_EVENT_SYS_INL_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "base/atomicops.h" | 10 #include "base/atomicops.h" |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "base/logging.h" | 12 #include "base/logging.h" |
13 #include "base/port.h" | 13 #include "base/port.h" |
14 #include "chrome/browser/sync/util/compat-pthread.h" | 14 #include "chrome/browser/sync/util/compat_pthread.h" |
15 #include "chrome/browser/sync/util/event_sys.h" | 15 #include "chrome/browser/sync/util/event_sys.h" |
16 #include "chrome/browser/sync/util/pthread_helpers.h" | 16 #include "chrome/browser/sync/util/pthread_helpers.h" |
17 #include "chrome/browser/sync/util/sync_types.h" | 17 #include "chrome/browser/sync/util/sync_types.h" |
18 | 18 |
19 // How to use Channels: | 19 // How to use Channels: |
20 | 20 |
21 // 0. Assume Bob is the name of the class from which you want to broadcast | 21 // 0. Assume Bob is the name of the class from which you want to broadcast |
22 // events. | 22 // events. |
23 // 1. Choose an EventType. This could be an Enum or something more complicated. | 23 // 1. Choose an EventType. This could be an Enum or something more complicated. |
24 // 2. Create an EventTraits class for your EventType. It must have | 24 // 2. Create an EventTraits class for your EventType. It must have |
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
331 CallbackObject* cbobject, | 331 CallbackObject* cbobject, |
332 CallbackMethod cbmethod, | 332 CallbackMethod cbmethod, |
333 CallbackArg0 arg0) { | 333 CallbackArg0 arg0) { |
334 return new ArgHookup<EventChannel, | 334 return new ArgHookup<EventChannel, |
335 typename EventChannel::EventTraits, | 335 typename EventChannel::EventTraits, |
336 CallbackObject, CallbackMethod, CallbackArg0>(channel, cbobject, | 336 CallbackObject, CallbackMethod, CallbackArg0>(channel, cbobject, |
337 cbmethod, arg0); | 337 cbmethod, arg0); |
338 } | 338 } |
339 | 339 |
340 #endif // CHROME_BROWSER_SYNC_UTIL_EVENT_SYS_INL_H_ | 340 #endif // CHROME_BROWSER_SYNC_UTIL_EVENT_SYS_INL_H_ |
OLD | NEW |