# MIDeviceReadFunction

## 定義

      #include <nitro/mi.h>

      typedef int (*MIDeviceReadFunction)(void *userdata, void *buffer, u32 offset, u32 length);

## 引数

userdata | `MI_InitDevice()`で指定された任意のユーザ定義値 コールバック関数の実装の利便性のために与えられます。
buffer | 読み込んだデータを格納する転送先メモリ
offset | データを読み込むべきデバイス上の先頭アドレス
length | 読み込むサイズ

## 返り値

成功すれば実際に読み込まれたデータサイズ、失敗すれば負の値を返す必要があります。

## 説明

デバイスからデータを読み込むためのコールバック形式を表す関数プロトタイプです。
この形式でデバイス読み込み操作を実装して`MI_InitDevice()`に指定します。

## 参照

`MI_InitDevice, MI_ReadDevice MI_WriteDevice
MIDevice, MIDeviceReadFunction, MIDeviceWriteFunction
`

## 履歴

2007/05/09 初版