Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1492)

Side by Side Diff: base/message_loop.h

Issue 10831271: [Chromoting] Adding uiAccess='true' to the remoting_me2me_host.exe's manifest as it is required to … (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: CR feedback. Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | base/message_loop.cc » ('j') | base/message_pump_win.h » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 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 BASE_MESSAGE_LOOP_H_ 5 #ifndef BASE_MESSAGE_LOOP_H_
6 #define BASE_MESSAGE_LOOP_H_ 6 #define BASE_MESSAGE_LOOP_H_
7 7
8 #include <queue> 8 #include <queue>
9 #include <string> 9 #include <string>
10 10
(...skipping 612 matching lines...) Expand 10 before | Expand all | Expand 10 after
623 623
624 void AddIOObserver(IOObserver* io_observer) { 624 void AddIOObserver(IOObserver* io_observer) {
625 pump_io()->AddIOObserver(io_observer); 625 pump_io()->AddIOObserver(io_observer);
626 } 626 }
627 627
628 void RemoveIOObserver(IOObserver* io_observer) { 628 void RemoveIOObserver(IOObserver* io_observer) {
629 pump_io()->RemoveIOObserver(io_observer); 629 pump_io()->RemoveIOObserver(io_observer);
630 } 630 }
631 631
632 #if defined(OS_WIN) 632 #if defined(OS_WIN)
633 // Please see MessagePumpWin for definitions of these methods. 633 // Register the handler to be used when asynchronous IO for the given file
634 void RegisterIOHandler(HANDLE file_handle, IOHandler* handler); 634 // completes. The registration persists as long as |file_handle| is valid, so
635 // |handler| must be valid as long as there is pending IO for the given file.
636 void RegisterIOHandler(HANDLE file, IOHandler* handler);
637
638 // Register the handler to be used to process job events. The registration
639 // persists as long as the job object is live, so |handler| must be valid
640 // until the job object is destoyed. Returns true if the registration
rvargas (doing something else) 2012/08/13 18:54:12 typo: destroyed
alexeypa (please no reviews) 2012/08/13 20:02:23 Done.
641 // succeeded, and false otherwise.
642 bool RegisterJobObject(HANDLE job, IOHandler* handler);
643
644 // Waits for the next IO completion that should be processed by |filter|, for
645 // up to |timeout| milliseconds. Return true if any IO operation completed,
646 // regardless of the involved handler, and false if the timeout expired. If
647 // the completion port received any message and the involved IO handler
648 // matches |filter|, the callback is called before returning from this code;
649 // if the handler is not the one that we are looking for, the callback will
650 // be postponed for another time, so reentrancy problems can be avoided.
651 // External use of this method should be reserved for the rare case when the
652 // caller is willing to allow pausing regular task dispatching on this thread.
635 bool WaitForIOCompletion(DWORD timeout, IOHandler* filter); 653 bool WaitForIOCompletion(DWORD timeout, IOHandler* filter);
636 654
637 protected: 655 protected:
638 // TODO(rvargas): Make this platform independent. 656 // TODO(rvargas): Make this platform independent.
639 base::MessagePumpForIO* pump_io() { 657 base::MessagePumpForIO* pump_io() {
640 return static_cast<base::MessagePumpForIO*>(pump_.get()); 658 return static_cast<base::MessagePumpForIO*>(pump_.get());
641 } 659 }
642 660
643 #elif defined(OS_POSIX) 661 #elif defined(OS_POSIX)
644 // Please see MessagePumpLibevent for definition. 662 // Please see MessagePumpLibevent for definition.
(...skipping 10 matching lines...) Expand all
655 #endif // defined(OS_POSIX) 673 #endif // defined(OS_POSIX)
656 }; 674 };
657 675
658 // Do not add any member variables to MessageLoopForIO! This is important b/c 676 // Do not add any member variables to MessageLoopForIO! This is important b/c
659 // MessageLoopForIO is often allocated via MessageLoop(TYPE_IO). Any extra 677 // MessageLoopForIO is often allocated via MessageLoop(TYPE_IO). Any extra
660 // data that you need should be stored on the MessageLoop's pump_ instance. 678 // data that you need should be stored on the MessageLoop's pump_ instance.
661 COMPILE_ASSERT(sizeof(MessageLoop) == sizeof(MessageLoopForIO), 679 COMPILE_ASSERT(sizeof(MessageLoop) == sizeof(MessageLoopForIO),
662 MessageLoopForIO_should_not_have_extra_member_variables); 680 MessageLoopForIO_should_not_have_extra_member_variables);
663 681
664 #endif // BASE_MESSAGE_LOOP_H_ 682 #endif // BASE_MESSAGE_LOOP_H_
OLDNEW
« no previous file with comments | « no previous file | base/message_loop.cc » ('j') | base/message_pump_win.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698