diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2009-02-10 15:44:00 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-02-10 15:44:00 -0800 |
commit | a6938bab1f6fa76ae98ebbe44f4e534e05fa0993 (patch) | |
tree | bc5a1f806bd06db8abb197e80be9ead3644c0bcc /include/ui/CameraHardwareInterface.h | |
parent | e41dd756db5184519f4dacbf4d95b333822605c7 (diff) | |
download | frameworks_native-a6938bab1f6fa76ae98ebbe44f4e534e05fa0993.zip frameworks_native-a6938bab1f6fa76ae98ebbe44f4e534e05fa0993.tar.gz frameworks_native-a6938bab1f6fa76ae98ebbe44f4e534e05fa0993.tar.bz2 |
auto import from //branches/cupcake/...@130745
Diffstat (limited to 'include/ui/CameraHardwareInterface.h')
-rw-r--r-- | include/ui/CameraHardwareInterface.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/ui/CameraHardwareInterface.h b/include/ui/CameraHardwareInterface.h index 2bd53dd..b068c52 100644 --- a/include/ui/CameraHardwareInterface.h +++ b/include/ui/CameraHardwareInterface.h @@ -20,12 +20,16 @@ #include <utils/IMemory.h> #include <utils/RefBase.h> #include <ui/CameraParameters.h> +#include <ui/Overlay.h> namespace android { /** Callback for startPreview() */ typedef void (*preview_callback)(const sp<IMemory>& mem, void* user); +/** Callback for startRecord() */ +typedef void (*recording_callback)(const sp<IMemory>& mem, void* user); + /** Callback for takePicture() */ typedef void (*shutter_callback)(void* user); @@ -89,6 +93,11 @@ public: * call back parameter may be null. */ virtual status_t startPreview(preview_callback cb, void* user) = 0; + /** + * Only used if overlays are used for camera preview. + */ + virtual bool useOverlay() {return false;} + virtual status_t setOverlay(const sp<Overlay> &overlay) {return BAD_VALUE;} /** * Stop a previously started preview. @@ -101,6 +110,29 @@ public: virtual bool previewEnabled() = 0; /** + * Start record mode. When a record image is available recording_callback() + * is called with the user parameter. Every record frame must be released + * by calling releaseRecordingFrame(). + */ + virtual status_t startRecording(recording_callback cb, void* user) = 0; + + /** + * Stop a previously started recording. + */ + virtual void stopRecording() = 0; + + /** + * Returns true if recording is enabled. + */ + virtual bool recordingEnabled() = 0; + + /** + * Release a record frame previously returned by the recording_callback() + * passed to startRecord(). + */ + virtual void releaseRecordingFrame(const sp<IMemory>& mem) = 0; + + /** * Start auto focus, the callback routine is called * once when focusing is complete. autoFocus() will * be called again if another auto focus is needed. |