IAsyncRetrieveCommit.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: $
00015 //  $HeadURL: http://svn.mobotix.net/svn/mxsdk/src/shared/trunk/interfaces/IASyncRetriveCommit.h $
00016 //
00018 
00019 
00020 
00021 #ifndef __MX_IASYNCRETRIVECOMMIT_H__
00022 #define __MX_IASYNCRETRIVECOMMIT_H__
00023 
00024 
00025 
00026 #define MX_IASYNCRETRIVECOMMIT_ID "IASyncRetriveCommit"
00027 
00028 
00029 
00030 #include "IInterface.h"
00031 
00032 #include <mx_types.h>
00033 #include <mx_error_codes.h>
00034 // SDK includes
00035 #include <mxm/core/mxmStringList.h>
00036 #include <mxm/core/mxmQtSlot.h>
00037 
00038 
00039 namespace mx {
00040    
00042 
00045 class IAsyncRetrieveCommit : public virtual IInterface {
00046  
00047 public:
00048         static const u32 NoTimeout = (u32)(-1);
00049 
00069         virtual void retrieve(mxmStringList& supportedInterfaces, 
00070                            const mxmQtSlot& slot,
00071                                           void* context,
00072                                           u32 uTimeOutMs = 5000) = 0;
00073 
00076         virtual bool isRetrieved(const mxmString& supportedInterface) = 0;
00079         virtual bool isRetrieving(const mxmString& supportedInterface) = 0;
00082         virtual bool isCommitting() = 0;
00085         virtual mx::EErrorCode cancelAsyncRequest() = 0;
00086 
00093         virtual void commit(const mxmQtSlot& slot, 
00094                                  void* context,
00095                                                           u32 uTimeOutMs = 5000,
00096                                                           bool bStorePermanent = false) = 0;
00097 
00098 };      
00099 
00100 
00101 };  // namespace mx
00102 
00103 
00104 #endif   // __MX_IASYNCRETRIVECOMMIT_H__

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