diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:45 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:45 -0800 |
commit | d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 (patch) | |
tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 /camera/libcameraservice/CameraHardwareStub.h | |
parent | 076357b8567458d4b6dfdcf839ef751634cd2bfb (diff) | |
download | frameworks_base-d83a98f4ce9cfa908f5c54bbd70f03eec07e7553.zip frameworks_base-d83a98f4ce9cfa908f5c54bbd70f03eec07e7553.tar.gz frameworks_base-d83a98f4ce9cfa908f5c54bbd70f03eec07e7553.tar.bz2 |
auto import from //depot/cupcake/@135843
Diffstat (limited to 'camera/libcameraservice/CameraHardwareStub.h')
-rw-r--r-- | camera/libcameraservice/CameraHardwareStub.h | 122 |
1 files changed, 0 insertions, 122 deletions
diff --git a/camera/libcameraservice/CameraHardwareStub.h b/camera/libcameraservice/CameraHardwareStub.h deleted file mode 100644 index cdd6011..0000000 --- a/camera/libcameraservice/CameraHardwareStub.h +++ /dev/null @@ -1,122 +0,0 @@ -/* -** -** Copyright 2008, The Android Open Source Project -** -** Licensed under the Apache License, Version 2.0 (the "License"); -** you may not use this file except in compliance with the License. -** You may obtain a copy of the License at -** -** http://www.apache.org/licenses/LICENSE-2.0 -** -** Unless required by applicable law or agreed to in writing, software -** distributed under the License is distributed on an "AS IS" BASIS, -** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -** See the License for the specific language governing permissions and -** limitations under the License. -*/ - -#ifndef ANDROID_HARDWARE_CAMERA_HARDWARE_STUB_H -#define ANDROID_HARDWARE_CAMERA_HARDWARE_STUB_H - -#include "FakeCamera.h" -#include <utils/threads.h> -#include <ui/CameraHardwareInterface.h> -#include <utils/MemoryBase.h> -#include <utils/MemoryHeapBase.h> -#include <utils/threads.h> - -namespace android { - -class CameraHardwareStub : public CameraHardwareInterface { -public: - virtual sp<IMemoryHeap> getPreviewHeap() const; - - virtual status_t startPreview(preview_callback cb, void* user); - virtual void stopPreview(); - virtual bool previewEnabled(); - - virtual status_t startRecording(recording_callback cb, void* user); - virtual void stopRecording(); - virtual bool recordingEnabled(); - virtual void releaseRecordingFrame(const sp<IMemory>& mem); - - virtual status_t autoFocus(autofocus_callback, void *user); - virtual status_t takePicture(shutter_callback, - raw_callback, - jpeg_callback, - void* user); - virtual status_t cancelPicture(bool cancel_shutter, - bool cancel_raw, - bool cancel_jpeg); - virtual status_t dump(int fd, const Vector<String16>& args) const; - virtual status_t setParameters(const CameraParameters& params); - virtual CameraParameters getParameters() const; - virtual void release(); - - static sp<CameraHardwareInterface> createInstance(); - -private: - CameraHardwareStub(); - virtual ~CameraHardwareStub(); - - static wp<CameraHardwareInterface> singleton; - - static const int kBufferCount = 4; - - class PreviewThread : public Thread { - CameraHardwareStub* mHardware; - public: - PreviewThread(CameraHardwareStub* hw) - : Thread(false), mHardware(hw) { } - virtual void onFirstRef() { - run("CameraPreviewThread", PRIORITY_URGENT_DISPLAY); - } - virtual bool threadLoop() { - mHardware->previewThread(); - // loop until we need to quit - return true; - } - }; - - void initDefaultParameters(); - void initHeapLocked(); - - int previewThread(); - - static int beginAutoFocusThread(void *cookie); - int autoFocusThread(); - - static int beginPictureThread(void *cookie); - int pictureThread(); - - mutable Mutex mLock; - - CameraParameters mParameters; - - sp<MemoryHeapBase> mHeap; - sp<MemoryBase> mBuffers[kBufferCount]; - - FakeCamera *mFakeCamera; - bool mPreviewRunning; - int mPreviewFrameSize; - - shutter_callback mShutterCallback; - raw_callback mRawPictureCallback; - jpeg_callback mJpegPictureCallback; - void *mPictureCallbackCookie; - - // protected by mLock - sp<PreviewThread> mPreviewThread; - preview_callback mPreviewCallback; - void *mPreviewCallbackCookie; - - autofocus_callback mAutoFocusCallback; - void *mAutoFocusCallbackCookie; - - // only used from PreviewThread - int mCurrentPreviewFrame; -}; - -}; // namespace android - -#endif |