SPI  1.2404.0
Secured Payment Interface
Device.h
Go to the documentation of this file.
1 
14 #ifndef __DEVICE_H
15 #define __DEVICE_H
16 
17 #include <cstdio>
18 
19 #include "SPIDEF.h"
20 #include "ReadCardData.h"
21 #include "Config.h"
22 
23 namespace Modularity {
24  namespace SPI {
31  class Device {
32  friend class SPI;
33  public:
43  SPILIBRARY_API virtual
44  SPI_RET_VAL Init() = 0;
45 
55  SPILIBRARY_API virtual
56  SPI_RET_VAL SetConfig(Config& ConfigObj) = 0;
57 
67  SPILIBRARY_API virtual
68  SPI_RET_VAL AbortDisplayActivity(string PackageName) = 0;
69 
85  SPILIBRARY_API virtual
86  SPI_RET_VAL DisplayActivity(string PackageName, string ActivityName, string DataInput, string & DataOutput, TimeOutType Timeout) = 0;
87 
94  SPILIBRARY_API virtual
95  string GetProperty(DeviceProperty Property) = 0;
96 
103  SPILIBRARY_API virtual
104  SPI_RET_VAL UploadLogs() = 0;
105 
117  SPILIBRARY_API virtual
118  SPI_RET_VAL GetConfig(Config& ConfigObj) = 0;
119 
134  SPILIBRARY_API virtual
135  SPI_RET_VAL ReadCard(ReadCardData* DataIO) = 0;
136 
143  SPILIBRARY_API virtual
145 
155  SPILIBRARY_API virtual
156  SPI_RET_VAL SendExternalEvent(SignedNumericType Code, std::string Data) = 0;
157 
162  SPILIBRARY_API
163  string GetName() const ;
164 
168  APIHandle GetDeviceHandle() const;
169 
173  Device(string Name,Config &,DeviceId Id);
174 
178  virtual ~Device();
179  protected:
184  };
185  }
186 }
187 
188 #endif //__DEVICE_H
virtual SPILIBRARY_API SPI_RET_VAL UploadLogs()=0
Upload device logs to cloud.
This namespace contains avilible API from Modularity Inc.
This class contains all the methods to Config a Service or a device when attached to a Service...
Definition: Config.h:33
ulint TimeOutType
Definition: SPIDEF.h:68
SPILIBRARY_API string GetName() const
Get device name as defined while added to SPI.
APIHandle DeviceHandle
Definition: Device.h:180
virtual SPILIBRARY_API SPI_RET_VAL SendExternalEvent(SignedNumericType Code, std::string Data)=0
Send external event to the device. The device will send this event to back office SUPPORTED ONLY ON V...
virtual SPILIBRARY_API SPI_RET_VAL GetConfig(Config &ConfigObj)=0
Get configuration set from payment application (Agamento). Use Config.GetCustomAttribute to get a con...
virtual SPILIBRARY_API SPI_RET_VAL SetConfig(Config &ConfigObj)=0
Send configuration set to payment application (Agamento). Use Config.SetCustomAttribute to set a conf...
This class contains all the operations that Avilible for a Service. Since this class is abstract...
Definition: Device.h:31
APIHandle GetDeviceHandle() const
Handle get - reserved for internal useage.
virtual SPILIBRARY_API SPI_RET_VAL ReadCard(ReadCardData *DataIO)=0
This method is extension to Service.DisplaySwipe and supports various interfaces of cards...
virtual SPILIBRARY_API SPI_RET_VAL DisplayActivity(string PackageName, string ActivityName, string DataInput, string &DataOutput, TimeOutType Timeout)=0
Display external application activity using Android startActivityForResult. Activity will be displaye...
Device(string Name, Config &, DeviceId Id)
Constructor reserved for internal useage.
This file conatins all requiered methods for Config. A Config instance must be used whenever adding a...
int32_t SignedNumericType
Definition: SPIDEF.h:83
virtual SPILIBRARY_API SPI_RET_VAL AbortReadCard()=0
Abort ReadCard operation while device is polling for card.
This file conatins all defenitions which are used in SPI API.
virtual SPILIBRARY_API string GetProperty(DeviceProperty Property)=0
Get property of remote device.
virtual SPILIBRARY_API SPI_RET_VAL AbortDisplayActivity(string PackageName)=0
Abort display external application activity started by DisplayActivity.
virtual ~Device()
destructor reserved for internal useage
void * APIHandle
Definition: SPIDEF.h:41
This class contains all the operations of the Payment Interface, Creation and Services management...
Definition: SPI.h:47
virtual SPILIBRARY_API SPI_RET_VAL Init()=0
Initialize the payment service.
This file conatins all requiered methods for ReadCard operation on Device interface.
This class contains all the input data and output data of Device.ReadCard(). All data in this class i...
Definition: ReadCardData.h:29