OLD | NEW |
| (Empty) |
1 // Copyright 2015 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 [DartPackage="mojo_services"] | |
6 module mojo; | |
7 | |
8 struct Photo { | |
9 // A string to uniquely identify an instance of a |Photo|. This can be used | |
10 // to de-duplicate photos over multiple runs on the camera roll. | |
11 string unique_id; | |
12 | |
13 // Stream to read contents of the photo from. | |
14 handle<data_pipe_consumer> content; | |
15 }; | |
16 | |
17 // |CameraRollService| provides access to the device's camera roll. | |
18 // The camera roll is exposed as a snapshot of all photos available as a list. | |
19 // The head of the list (element with index 0) is a photo with the latest | |
20 // timestamp and subsequent elements are in decreasing order of timestamp. | |
21 interface CameraRollService { | |
22 // Updates the snapshot of all photos available. Photos might have been added | |
23 // or removed after the service was started or |Update| was called. | |
24 Update(); | |
25 // Get the number of photos available in the current snapshot. | |
26 GetCount() => (uint32 num_photos); | |
27 // Get the photo from the current snapshot at |index|. null will be returned | |
28 // if such an index is out-of-bounds. | |
29 GetPhoto(uint32 index) => (Photo? photo); | |
30 }; | |
31 | |
32 // |CameraService| provides access to the device's camera video stream. | |
33 interface CameraService { | |
34 // Returns the most recent frame captured by the device's camera | |
35 // in preview mode. | |
36 GetLatestFrame() => (handle<data_pipe_consumer>? content); | |
37 }; | |
OLD | NEW |