00001 // /// // Mx clientSDK 00002 // ///// //// Mx Crossplatform Client Library 00003 // /// XXX XXX /// 00004 // /// XXX XXX /// $RCSfile: mxcpcJPEGReceiver.h,v $ 00005 // /// XXX /// $Revision: 1.1 $ 00006 // /// XXX XXX /// $Date: 2005/12/14 10:38:52 $ 00007 // //// XXX XXX //// $Author: cvs-kai $ 00008 // //// //// 00009 // //// M O B O T I X //////////////////////////////////////////////// 00010 // //// Security Vision Systems ////////////////////////////////////////////// 00011 // // 00012 // Copyright (C) 2005 - 2006, MOBOTIX AG, Germany // 00013 // This software is made available under the BSD licence. Please refer // 00014 // to the file LICENCE.TXT contained in this distribution for details. // 00015 // // 00016 // ///////////////////////////////////////////////////////////////////// 00017 00018 00019 00020 #ifndef __MXCPC_JPEGRECEIVER_H__ 00021 #define __MXCPC_JPEGRECEIVER_H__ 00022 00023 00024 00025 #include <mxcpc_namespace.h> 00026 00027 00028 00029 //! Interface to all classes capable of processing multiple frames of binary 00030 //! JPEG data. 00031 /*! 00032 * \ingroup mxcpc_core 00033 * 00034 * For instance, JPEG receivers can be plugged into an 00035 * mxcpcFramewiseMxPEGScanToJPEGConverter. 00036 */ 00037 class mxcpcJPEGReceiver { 00038 00039 public: 00040 virtual ~mxcpcJPEGReceiver(); 00041 00042 public: 00043 //! To inform the receiver that a new frame (JPEG image) begins. 00044 virtual void beginFrame(void) = 0; 00045 //! To inform the receiver that the current frame (JPEG image) is finished. 00046 virtual void endFrame(void) = 0; 00047 //! Used to pump JPEG bytes into the receiver. The binary data has to be 00048 //! copied by the receiver. 00049 virtual void receiveJPEGBytes(const mxcpc::u8 *buffer, int num) = 0; 00050 }; 00051 00052 00053 00054 #endif // __MXCPC_JPEGRECEIVER_H__ 00055