OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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 #include "media/midi/midi_manager_alsa.h" | 5 #include "media/midi/midi_manager_alsa.h" |
6 | 6 |
7 #include <alsa/asoundlib.h> | |
8 #include <poll.h> | 7 #include <poll.h> |
9 #include <stdlib.h> | 8 #include <stdlib.h> |
10 #include <algorithm> | 9 #include <algorithm> |
11 #include <string> | 10 #include <string> |
12 | 11 |
13 #include "base/bind.h" | 12 #include "base/bind.h" |
14 #include "base/json/json_string_value_serializer.h" | 13 #include "base/json/json_string_value_serializer.h" |
15 #include "base/logging.h" | 14 #include "base/logging.h" |
16 #include "base/memory/scoped_ptr.h" | |
17 #include "base/memory/scoped_vector.h" | |
18 #include "base/message_loop/message_loop.h" | 15 #include "base/message_loop/message_loop.h" |
19 #include "base/posix/eintr_wrapper.h" | 16 #include "base/posix/eintr_wrapper.h" |
20 #include "base/safe_strerror_posix.h" | 17 #include "base/safe_strerror_posix.h" |
21 #include "base/strings/string_number_conversions.h" | 18 #include "base/strings/string_number_conversions.h" |
22 #include "base/strings/stringprintf.h" | 19 #include "base/strings/stringprintf.h" |
23 #include "base/threading/thread.h" | |
24 #include "base/time/time.h" | 20 #include "base/time/time.h" |
25 #include "base/values.h" | |
26 #include "crypto/sha2.h" | 21 #include "crypto/sha2.h" |
27 #include "media/midi/midi_port_info.h" | 22 #include "media/midi/midi_port_info.h" |
28 | 23 |
29 namespace media { | 24 namespace media { |
30 namespace midi { | 25 namespace midi { |
31 | 26 |
32 namespace { | 27 namespace { |
33 | 28 |
34 // Per-output buffer. This can be smaller, but then large sysex messages | 29 // Per-output buffer. This can be smaller, but then large sysex messages |
35 // will be (harmlessly) split across multiple seq events. This should | 30 // will be (harmlessly) split across multiple seq events. This should |
(...skipping 1323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1359 source_map_[AddrToInt(client_id, port_id)] = port_index; | 1354 source_map_[AddrToInt(client_id, port_id)] = port_index; |
1360 return true; | 1355 return true; |
1361 } | 1356 } |
1362 | 1357 |
1363 MidiManager* MidiManager::Create() { | 1358 MidiManager* MidiManager::Create() { |
1364 return new MidiManagerAlsa(); | 1359 return new MidiManagerAlsa(); |
1365 } | 1360 } |
1366 | 1361 |
1367 } // namespace midi | 1362 } // namespace midi |
1368 } // namespace media | 1363 } // namespace media |
OLD | NEW |