felicalib.c

#include "felicalib.h"
#include "felicaint.h"

マクロ定義

#define resolve_entry(f)   p->f = (f ## _t)GetProcAddress(p->hInstDLL, #f)

関数

pasoripasori_open (char *dummy)
 PaSoRi をオープンする
void pasori_close (pasori *p)
 PaSoRi ハンドルをクローズする
int pasori_init (pasori *p)
 PaSoRi を初期化する
static felicaalloc_felica (pasori *p, uint16 systemcode)
felicafelica_polling (pasori *p, uint16 systemcode, uint8 RFU, uint8 timeslot)
 FeliCa をポーリングする
int felica_read_without_encryption02 (felica *f, int servicecode, int mode, uint8 addr, uint8 *data)
 暗号化されていないブロックを読み込む
int felica_write_without_encryption (felica *f, int servicecode, uint8 addr, uint8 *data)
 暗号化されていないブロックを書き込む
void felica_free (felica *f)
 felica ハンドル解放
void felica_getidm (felica *f, uint8 *buf)
 IDm 取得
void felica_getpmm (felica *f, uint8 *buf)
 PMm 取得
felicafelica_enum_systemcode (pasori *p)
 システムコードの列挙
felicafelica_enum_service (pasori *p, uint16 systemcode)
 サービス/エリアコードの列挙

説明

felicalib 本体

マクロ定義

#define resolve_entry (  )     p->f = (f ## _t)GetProcAddress(p->hInstDLL, #f)


関数

static felica* alloc_felica ( pasori p,
uint16  systemcode 
) [static]

felica* felica_enum_service ( pasori p,
uint16  systemcode 
)

サービス/エリアコードの列挙

引数:
[in] p pasoriハンドル
[in] systemcode システムコード
戻り値:
felicaハンドル
結果は、felica構造体の num_area_code/area_code/end_service_code および num_service_code/service_code に格納される。

felica* felica_enum_systemcode ( pasori p  ) 

システムコードの列挙

引数:
[in] p pasoriハンドル
戻り値:
felicaハンドル
結果は、felica構造体の num_system_code/system_code に格納される。 なお、システムコードのエンディアンは逆に格納されているので注意すること。

void felica_free ( felica f  ) 

felica ハンドル解放

引数:
[in] f felica ハンドル

void felica_getidm ( felica f,
uint8 buf 
)

IDm 取得

引数:
[in] f felica ハンドル
[out] buf IDm を格納するバッファ(8バイト)

void felica_getpmm ( felica f,
uint8 buf 
)

PMm 取得

引数:
[in] f felica ハンドル
[out] buf PMm を格納するバッファ(8バイト)

felica* felica_polling ( pasori p,
uint16  systemcode,
uint8  RFU,
uint8  timeslot 
)

FeliCa をポーリングする

引数:
[in] p pasoriハンドル
[in] systemcode システムコード
[in] RFU RFU (使用しない)
[in] timeslot タイムスロット
戻り値:
felicaハンドル

int felica_read_without_encryption02 ( felica f,
int  servicecode,
int  mode,
uint8  addr,
uint8 data 
)

暗号化されていないブロックを読み込む

引数:
[in] f felicaハンドル
[in] servicecode サービスコード
[in] mode モード(使用しない)
[in] addr ブロック番号
[out] data データ(16バイト)
戻り値:
エラーコード
サービスコード、ブロック番号を指定してブロックを読み込む。 システムコードは felica_polling で指定したものが使用される。

int felica_write_without_encryption ( felica f,
int  servicecode,
uint8  addr,
uint8 data 
)

暗号化されていないブロックを書き込む

引数:
[in] f felicaハンドル
[in] servicecode サービスコード
[in] mode モード(使用しない)
[in] addr ブロック番号
[out] data データ(16バイト)
戻り値:
エラーコード
サービスコード、ブロック番号を指定してブロックを読み込む。 システムコードは felica_polling で指定したものが使用される。 注意!!! 本関数は未テスト!!!!!

void pasori_close ( pasori p  ) 

PaSoRi ハンドルをクローズする

引数:
[in] p pasoriハンドル
felica.dll を解放する

int pasori_init ( pasori p  ) 

PaSoRi を初期化する

引数:
[in] p pasoriハンドル
戻り値:
エラーコード

pasori* pasori_open ( char *  dummy  ) 

PaSoRi をオープンする

引数:
[in] dummy ダミー (libpasori との互換性のため)
戻り値:
pasori ハンドル
felica.dll をロード、初期化する


felicalibに対してSun Nov 18 21:27:49 2007に生成されました。  doxygen 1.5.3