AppCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ECardEventProcessor.h
Go to the documentation of this file.
1 #ifndef __CARDEVENTPROCESSOR_H
2 #define __CARDEVENTPROCESSOR_H
3 
4 #include "appcore/eventsfileprocessor/libevfileprocessor.h"
5 #include "appcore/eventsfileprocessor/EEventFillerAttribute.h"
6 #include "ELastTransactionInfo.h"
7 #include "EEventLogManager.h"
8 #include "appcore/eventsfileprocessor/ECardEventFileProcessor.h"
9 #include "appcore/cardevent/cardevent.h"
10 
11 namespace EM
12 {
13  namespace PT
14  {
15  class EDataCollection;
16  class EPTAnswer;
17  }
18 
19  namespace EventFileProcessor
20  {
24  {
25  public:
28  virtual ~ECardEventProcessor();
29  virtual ECardEventProcessor *Clone() = 0;
30 
31  virtual bool CheckEvent( CardEvent *cardEvent, ECardEventFileProcessor::ProcessEventResult &evaluationResult, CardEventCol *cardEventCol, EStatisticsCollection &statistics ) = 0;
32  virtual EM::PT::EDataCollection *WriteEvent( CardEvent *cardEvent, ECardEventFileProcessor::ProcessEventResult &writeEventResult, EStatisticsCollection &statistics ) = 0;
33  virtual bool WriteStatistics( EM::PT::EPTAnswer *answer, unsigned long readerNumber, bool unfinishedOperation, EStatisticsCollection &statistics );
34 
35  void SetEventFillerAttribute( EEventFillerAttribute *eventFillerAttribute );
36  void SetLastProcessedEvent( CardEvent *cardEvent );
37 
38  CardEvent *GetLastProcessedEvent();
39  ELastTransactionInfo *GetLastTransactionInfo();
40 
41  void FillLastTransactionInfo( EM::PT::EDataCollection *dataCol );
42  void WriteAdditionalStatistics( bool unfinishedOperation );
43  void SetWritePhysicallyStatistics( bool writePhysically );
44 
45  protected:
46  bool GetWritePhysically();
47  EEventFillerAttribute *GetEventFillerAttribute();
48  void WriteEvaluationErrorStatistics( unsigned char errorID, CardEvent *cardEvent, EStatisticsCollection &statistics );
49  void WriteAdditionalEvaluationError( CardEvent *cardEvent, EEventLogManager::EEventLogType evaluationError );
50 
51  private:
52  class DataClass;
53  DataClass *d;
54  };
55  }
56 }
57 
58 #endif //__CARDEVENTPROCESSOR_H
std::list< EM::Strojcek::StatistikaStrojcek::VystupneData * > EStatisticsCollection
Definition: ECardEventFileProcessor.h:35
Storage class containing information about last processed event.
Definition: ELastTransactionInfo.h:10
#define LIBEVFILEPROCESSOR_API
Definition: libevfileprocessor.h:12
EEventTripTicketPr __EDATAPTR d
Definition: EEventTripTicket.h:96
std::list< CardEvent * > CardEventCol
Definition: cardevent.h:246
Storage class containing parameters for processing events.
Definition: EEventFillerAttribute.h:19
EEventLogType
Definition: EEventLogManager.h:16
ProcessEventResult
ProcessEventResult enumerator.
Definition: ECardEventFileProcessor.h:45
__EPUBLIC __ECLASS LIBCARDEVENT_API CardEvent
The ancestor of all events. Contains common information for all events.
Definition: cardevent.h:17
Definition: ECardEventProcessor.cpp:19
Ancestor of all card event processors.
Definition: ECardEventProcessor.h:23
virtual CardEvent __EDATAPTR Clone()
SYSTEM INCLUDES.
Definition: CardFacadeManagerXML.h:6