21 #ifndef SEPARATISTA_IBAN_H 22 #define SEPARATISTA_IBAN_H 28 #pragma warning(disable: 4251) 31 #ifdef SEPARATISTA_IBAN_BUILDINGDLL 32 # define IBAN_EXTERN __declspec(dllexport) 33 #elif defined SEPARATISTA_IBAN_USINGDLL 34 # define IBAN_EXTERN __declspec(dllimport) 40 #define SEPARATISTA_IBAN_MAX_ACCOUNT 30 45 typedef wchar_t IBANCC[2];
58 IBAN& operator = (
const char *iban);
63 IBAN& operator = (
const wchar_t *pIBAN);
68 void set(
const char *iban);
73 void set(
const wchar_t *pIBAN);
80 const char* getIBAN();
85 operator const char* ();
90 const IBANCC& getCountryCode()
const;
95 const IBANCC& getControlSum()
const;
112 void format(
bool seperator =
true);
118 void mbformat(
bool separator =
true);
121 IBANCC m_countryCode;
123 wchar_t m_accountNumber[SEPARATISTA_IBAN_MAX_ACCOUNT];
124 size_t m_accountNumberLength;
126 std::string m_mbformatted;
127 std::wstring m_formatted;
132 #endif // !defined SAPARATISTA_IBAN_H