FedmIscTagHandler_ISO14443_4_MIFARE_DESFire.cpp
Go to the documentation of this file.
00001 /*-------------------------------------------------------
00002 |                                                       |
00003 |      FedmIscTagHandler_ISO14443_4_MIFARE_DESFire.cpp  |
00004 |                                                       |
00005 ---------------------------------------------------------
00006 
00007 Copyright © 2009-2010   FEIG ELECTRONIC GmbH, All Rights Reserved.
00008                                                 Lange Strasse 4
00009                                                 D-35781 Weilburg
00010                                                 Federal Republic of Germany
00011                                                 phone    : +49 6471 31090
00012                                                 fax      : +49 6471 310999
00013                                                 e-mail   : obid-support@feig.de
00014                                                 Internet : http://www.feig.de
00015                                         
00016 Author                  :       Markus Hultsch
00017 Begin                   :       30.03.2009
00018 
00019 Version                 :       03.02.05 / 20.09.2010 / M. Hultsch
00020 
00021 Operation Systems       :       independent
00022 
00023 Function                        :       class for OBID® classic-pro transponder ISO14443-4 MIFARE DESFire
00024 
00025 NOTE                            :       this class supports only selected mode in Host-Mode
00026 
00027 
00028 Trademarks:
00029 -----------
00030 OBID®, OBID i-scan® and OBID myAXXESS® are registered Trademarks of FEIG ELECTRONIC GmbH
00031 Other Trademarks: see FEDM.h
00032 */
00033 
00034 
00035 /*############### Questions ##################################################
00036 - CID und NAD für T=CL?
00037 
00038 */
00039 
00040 #if !defined(_FEDM_NO_TAG_HANDLER_ISO14443)
00041 
00042 #include "FedmIscTagHandler_ISO14443_4_MIFARE_DESFire.h"
00043 #include "../FEDM_ISCReader.h"
00044 #include "../FEDM_ISOTabItem.h"
00045 #include "../FEDM_ISCReaderID.h"
00046 #include "../FEDM_ISC.h"
00047 
00048 
00049 #if _MSC_VER >= 1400
00050         #pragma warning(disable : 4996)
00051 #endif
00052 
00053 
00054 const unsigned int FedmIscTagHandler_ISO14443_4_MIFARE_DESFire::PLAIN_COMMUNICATION             = 0x00;
00055 const unsigned int FedmIscTagHandler_ISO14443_4_MIFARE_DESFire::PLAIN_SECURED_BY_MAC    = 0x01;
00056 const unsigned int FedmIscTagHandler_ISO14443_4_MIFARE_DESFire::FULLY_ENCIPHERED                = 0x03;
00057 
00058 
00059 //####################################################################
00060 // class FedmIscTagHandler_ISO14443_4_MIFARE_DESFire
00061 // >> supports only ISO Host Commands <<
00062 //####################################################################
00063 
00064 FedmIscTagHandler_ISO14443_4_MIFARE_DESFire::FedmIscTagHandler_ISO14443_4_MIFARE_DESFire(
00065         FEDM_ISCReader* pReader,
00066         FEDM_ISOTabItem* pTabItem )
00067         : FedmIscTagHandler_ISO14443_4(pReader, FedmIscTagHandler::TYPE_ISO14443_4_MIFARE_DESFIRE, pTabItem)
00068 {
00069         m_sTagName = "ISO 14443-4 Type A : MIFARE DESFire";
00070 
00071         m_pImpl_C1 = new FedmIscTagHandler_ISO14443_4_MIFARE_DESFire_Impl_C1(pTabItem, this);
00072         m_pImpl_C3 = new FedmIscTagHandler_ISO14443_4_MIFARE_DESFire_Impl_C3(pTabItem, this);
00073 
00074         ISoftCrypto.m_pParent           = this;
00075         IFlexSoftCrypto.m_pParent       = this;
00076         ISamCrypto.m_pParent            = this;
00077 
00078         Init();
00079 }
00080 
00081 FedmIscTagHandler_ISO14443_4_MIFARE_DESFire::FedmIscTagHandler_ISO14443_4_MIFARE_DESFire(
00082         FEDM_ISCReader* pReader,
00083         unsigned int uiTagHandlerType,
00084         FEDM_ISOTabItem* pTabItem )
00085         : FedmIscTagHandler_ISO14443_4(pReader, uiTagHandlerType, pTabItem)
00086 {
00087         m_sTagName = "ISO 14443-4 Type A : MIFARE DESFire";
00088 
00089         m_pImpl_C1 = new FedmIscTagHandler_ISO14443_4_MIFARE_DESFire_Impl_C1(pTabItem, this);
00090         m_pImpl_C3 = new FedmIscTagHandler_ISO14443_4_MIFARE_DESFire_Impl_C3(pTabItem, this);
00091 
00092         ISoftCrypto.m_pParent           = this;
00093         IFlexSoftCrypto.m_pParent       = this;
00094         ISamCrypto.m_pParent            = this;
00095 
00096         Init();
00097 }
00098 
00099 FedmIscTagHandler_ISO14443_4_MIFARE_DESFire::~FedmIscTagHandler_ISO14443_4_MIFARE_DESFire()
00100 {
00101         delete m_pImpl_C1;
00102         delete m_pImpl_C3;
00103 }
00104 
00105 // set all data members to 0
00106 void FedmIscTagHandler_ISO14443_4_MIFARE_DESFire::Init()
00107 {
00108         FedmIscTagHandler::Init();
00109 }
00110 
00111 #endif // #if !defined(_FEDM_NO_TAG_HANDLER_ISO14443)


maggie_rfid_drivers
Author(s): Raul Perula-Martinez
autogenerated on Mon Sep 14 2015 03:05:30