ISupportsRecordingConfiguration.h

00001 //           ///          //                                  C++ Cross Platform
00002 //          /////        ////
00003 //         /// XXX     XXX ///            ///////////   /////////     ///   ///
00004 //        ///    XXX XXX    ///         ///             ///    ///   ///  ///
00005 //       ///       XXX       ///         /////////     ///      //  //////
00006 //      ///      XXX XXX      ///               ///   ///    ///   ///  ///
00007 //     ////    XXX     XXX    ////    ////////////  //////////    ///   ///
00008 //    ////                     ////
00009 //   ////  M  O  B  O  T  I  X  ////////////////////////////////////////////////
00010 //  //// Security Vision Systems //////////////////////////////////////////////
00011 //
00012 //  $Author: dgr $
00013 //  $LastChangedBy: dgr $
00014 //  $LastChangedDate: 2007-06-06 15:32:44 +0200 (Wed, 06 Jun 2007) $
00015 //  $HeadURL: http://svn.mobotix.net/svn/mxsdk/src/shared/trunk/interfaces/ISupportsRecordingConfiguration.h $
00016 //
00018 
00019 
00020 
00021 #ifndef __MX_ISUPPORTSRECORDINGCONFIGURATION_H__
00022 #define __MX_ISUPPORTSRECORDINGCONFIGURATION_H__
00023 
00024 
00025 
00026 #define MX_ISUPPORTSRECORDINGCONFIGURATION_ID "ISupportsRecordingConfiguration"
00027 
00028 
00029 
00030 #include "IInterface.h"
00031 #include "../mx_types.h"
00032 #include "../mx_error_codes.h"
00033 #include "../mx_enum_config.h"
00034 
00035 #include <mxm/core/mxmString.h>
00036 
00037 
00038 namespace mx {
00039 
00041 
00044 class ISupportsRecordingConfiguration : virtual IInterface {
00045 
00046 public:
00047 
00051         virtual u32 supportedRecordingModes() = 0;
00054         virtual EErrorCode setRecordingMode(enum ERecordingMode eMode) = 0;
00059         virtual ERecordingMode recordingMode() = 0;
00060 
00061         virtual bool isRecordingFramerateSupported() = 0;
00062 
00063         virtual EErrorCode setRecordingFramerate(float framerate) = 0;
00064 
00065         virtual float recordingFramerate() = 0;
00066 
00067         virtual bool isPackedStorySupported() = 0;
00068 
00069         virtual EErrorCode setPackedStory(bool enable) = 0;
00070 
00071         virtual bool packedStory() = 0;
00072 
00073         virtual bool isAudioRecordingSupported() = 0;
00074 
00075         virtual EErrorCode setAudioRecording(bool enable) = 0;
00076 
00077         virtual bool audioRecording() = 0;
00078 
00079         virtual u32 supportedRecordingSwitches() = 0;
00082         virtual EErrorCode setRecordingSwitch(ERecordingSwitch eSwitch) = 0;
00087         virtual ERecordingSwitch recordingSwitch() = 0;
00088         virtual bool isRecordingSwitchSupported() = 0;
00089 
00090         virtual u32 supportedGeneralArmingSwitches() =0;
00093         virtual EErrorCode setGeneralArmingSwitch(ERecordingSwitch eSwitch) = 0;
00094 
00099         virtual ERecordingSwitch generalArmingSwitch() = 0;
00100         virtual bool isGeneralArmingSwitchSupported() = 0;
00101         
00105         virtual bool isPreRecordingTimeSupported() = 0;
00106 
00107         virtual EErrorCode setPreRecordingTime(u32 uTimeMs) = 0;
00108 
00109         virtual u32 preRecordingTime() = 0;
00110 
00114         virtual bool isPostRecordingTimeSupported() = 0;
00115 
00116         virtual EErrorCode setPostRecordingTime(u32 uTimeMs) = 0;
00117 
00118         virtual u32 postRecordingTime() = 0;
00119 
00122         virtual bool isEventFramerateSupported() = 0;
00123 
00124         virtual EErrorCode setEventFramerate(float framerate) = 0;
00125 
00126         virtual float eventFramerate() = 0;
00127 
00128         virtual u32 supportedRecordingEvents() = 0;
00129 
00130         virtual u32 activeRecordingEvents() = 0;
00131 
00132         virtual u32 recordingEvents() = 0;
00133 
00134         virtual EErrorCode setRecordingEvents(u32 recordingEvents) = 0;
00135 
00139         virtual bool isExternalStorageSupported() = 0;
00140         /* possible recording targets OR'ed. See enum ERecordingTargets
00141          * for possible targets
00142          */
00143         virtual u32 supportedRecordingTargets() = 0;
00144 
00145         virtual EErrorCode setRecordingTarget(ERecordingTarget target) = 0;
00146         virtual ERecordingTarget recordingTarget() = 0;
00147 
00148         virtual EErrorCode setStorageServerIP(const mxmString& ip) = 0;
00149         virtual mxmString storageServerIP() = 0;
00150 
00151         virtual EErrorCode setRemoteDirectory(const mxmString& dir) = 0;
00152         virtual mxmString remoteDirectory() = 0;
00153 
00154         virtual EErrorCode setRemoteUser(const mxmString& user) = 0;
00155         virtual mxmString remoteUser() = 0;
00156 
00157         virtual EErrorCode setRemotePassword(const mxmString& password) = 0;
00158         virtual mxmString remotePassword() = 0;
00162         virtual EErrorCode setStorageSizeMB(u32 size) = 0;
00163         virtual u32 storageSizeMB() = 0;
00164         virtual EErrorCode setStorageSizeUnlimited(bool unlimited) = 0;
00165         virtual bool storageSizeUnlimited() = 0;
00166 
00167         virtual EErrorCode setTimeToKeep(u32 days) = 0;
00168         virtual u32 timeToKeep() = 0;
00169         virtual EErrorCode setTimeToKeepUnlimited(bool unlimited) = 0;
00170         virtual bool timeToKeepUnlimited() = 0;
00171 
00172         virtual EErrorCode setNumberOfEvents(u32 size) = 0;
00173         virtual u32 numberOfEvents() = 0;
00174         virtual EErrorCode setNumberOfEventsUnlimited(bool unlimited) = 0;
00175         virtual bool numberOfEventsUnlimited() = 0;
00176 
00177 };
00178 
00179 
00180 };
00181 
00182 
00183 
00184 #endif   // __MX_ISUPPORTSRECORDINGCONFIGURATION_H__

Generated on Fri Jun 29 17:21:04 2007 for MxPEG SDK by  doxygen 1.4.6