Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

interactor.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  $RCSfile: interactor.h,v $
00003                              -------------------
00004     cvs         : $Id: interactor.h,v 1.8 2002/12/27 23:06:53 aquamaniac Exp $
00005     begin       : Sat Jun 08 2002
00006     copyright   : (C) 2001 by Martin Preuss
00007     email       : openhbci@aquamaniac.de
00008 
00009  ***************************************************************************
00010  *                                                                         *
00011  *   This library is free software; you can redistribute it and/or         *
00012  *   modify it under the terms of the GNU Lesser General Public            *
00013  *   License as published by the Free Software Foundation; either          *
00014  *   version 2.1 of the License, or (at your option) any later version.    *
00015  *                                                                         *
00016  *   This library is distributed in the hope that it will be useful,       *
00017  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00018  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU     *
00019  *   Lesser General Public License for more details.                       *
00020  *                                                                         *
00021  *   You should have received a copy of the GNU Lesser General Public      *
00022  *   License along with this library; if not, write to the Free Software   *
00023  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston,                 *
00024  *   MA  02111-1307  USA                                                   *
00025  *                                                                         *
00026  ***************************************************************************/
00027 
00028 #ifndef HBCIINTERACTOR_H
00029 #define HBCIINTERACTOR_H
00030 
00035 #ifdef __cplusplus
00036 namespace HBCI {
00037   class Interactor;
00038 };
00039 typedef struct HBCI::Interactor HBCI_Interactor;
00040 #else /* __cplusplus */
00041 typedef struct HBCI_Interactor HBCI_Interactor;
00042 #endif /* __cplusplus */
00043 
00044 #include <openhbci/dllimport.h>
00045 #include <openhbci/pointer.h>
00046 #include <openhbci/user.h>
00047 #include <openhbci/medium.h>
00048 
00049 
00050 #ifdef __cplusplus
00051 
00052 namespace HBCI {
00070 class DLLIMPORT Interactor {
00071 private:
00072     bool _aborted;
00073 
00074 public:
00089     virtual bool msgInputPin(Pointer<User> user,
00090                              string &pin,
00091                              int minsize,
00092                              bool newPin);
00093 
00104     virtual void msgStartInputPinViaKeypad(Pointer<User> user);
00105 
00116     virtual void msgFinishedInputPinViaKeypad(Pointer<User> user);
00117 
00128     virtual bool msgInsertMediumOrAbort(Pointer<User> user,
00129                                         MediumType t);
00130 
00144     virtual bool msgInsertCorrectMediumOrAbort(Pointer<User> user,
00145                                                MediumType t);
00146 
00153     virtual void msgStateResponse(const string &msg);
00154 
00174     virtual bool keepAlive();
00175 
00185     void abort(bool a=true) {_aborted=a;};
00186 
00194     bool aborted() const { return _aborted;};
00195 
00196     Interactor();
00197     virtual ~Interactor();
00198 
00199 };
00200 
00201 } /* namespace HBCI */
00202 extern "C" {
00203 #endif /* __cplusplus */
00204     extern void HBCI_Interactor_msgStateResponse(HBCI_Interactor *i,
00205                                                  const char *msg);
00206     extern void HBCI_Interactor_abort(HBCI_Interactor *i, int a);
00207     extern int HBCI_Interactor_aborted(const HBCI_Interactor *i);
00208 #ifdef __cplusplus
00209 }
00210 #endif /* __cplusplus */
00211 
00212 #endif
00213 
00214 
00215 

Generated on Mon Jun 23 13:41:07 2003 for openhbci by doxygen1.2.17