AppEasy Core SDK  1.5.0
Cross platform mobile and desktop app and game development SDK - The easy way to make apps
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines
CzPlatformCam.h
Go to the documentation of this file.
00001 // 
00002 //
00003 // AppEasy SDK - Cross Platform Multi-purpose Game and App Engine
00004 //
00005 // Developed by Matthew Hopwood of Pocketeers Limited - www.pocketeers.co.uk
00006 //
00007 // For updates, tutorials and more details check out www.appeasymobile.com
00008 //
00009 // This code is provided free of charge and without any warranty whatsoever. You must ensure that this whole notice is present in all files and derivatives, so the reader knows its origin.
00010 // If you use this SDK in your product then please ensure that you credit AppEasy's usage appropriately. Please see www.appeasymobile.com for licensing details and support
00011 //
00012 //
00013 
00014 #if !defined(_CCZ_PLATFORM_CAM_H_)
00015 #define _CCZ_PLATFORM_CAM_H_
00016 
00017 #include "IzPlatformCam.h"
00018 
00019 class CzPlatformCam: public IzPlatformCam
00020 {
00021 protected:
00022 
00023     // Properties
00024 private:
00025     bool                    Started;
00026     eCzCameraCaptureSize    SizeHint;
00027     eCzCameraCaptureQuality Quality;
00028     bool                    ImageValid;
00029     bool                    ImageCreated;
00030     bool                    Updated;
00031     CzImage*                ImageBrush;
00032     int                     LastFrameOrientation;
00033     eCzCameraType           CameraType;
00034 public:
00035     bool                    isAvailable();
00036     bool                    isStarted() const { return Started; }
00037     void                    setUpdated(bool updated) { Updated = updated; }
00038     bool                    isUpdated() const { return Updated; }
00039     void                    setImageValid(bool valid) { ImageValid = valid; }
00040     bool                    isImageValid() const { return ImageValid; }
00041     void                    setImageCreated(bool valid) { ImageCreated = valid; }
00042     bool                    isImageCreated() const { return ImageCreated; }
00043     eCzCameraCaptureSize    getSizeHint() const { return SizeHint; }
00044     eCzCameraCaptureQuality getQuality() const { return Quality; }
00045 
00046     void                    setImageBrush(CzImage* brush);
00047     CzImage*                getImageBrush();
00048     eCzCameraStatus         getStatus();
00049     bool                    setFrontFacing();
00050     bool                    setRearFacing();
00051     int                     getLastFrameOrientation() const;
00052     void                    setLastFrameOrientation(int angle);
00053     eCzCameraType           getCameraType() const;
00054     // Properties end
00055 
00056 protected:
00057 public:
00058     CzPlatformCam() : ImageBrush(NULL), Started(false),ImageValid(false), ImageCreated(false), Updated(false), LastFrameOrientation(0)  {}
00059     int         Init();
00060     void        Release();
00061 
00062     bool        Start(eCzCameraCaptureSize size_hint, eCzCameraCaptureQuality quality = CCQ_Medium);
00063     void        Stop();
00064 };
00065 
00066 
00067 #endif  // _CCZ_PLATFORM_CAM_H_