# MI_GetCompressionType

## 構文

  `#include <nitro/mi.h>`
  `MICompressionType MI_GetCompressionType( const void* srcp );`

## 引数

srcp | 圧縮データが格納されているソースアドレス

## 返り値

圧縮の形式です。

## 説明

圧縮データのヘッダ情報を調べ、圧縮形式を取得します。
データの先頭部分に埋め込まれた圧縮形式を読み、それを返すだけですので、実際に圧縮データの中身自体を調べるわけではありません。

この関数はTWL-SDKでサポートしている全ての圧縮形式のデータに対応しています。

返り値は `MICompressType` 列挙型で以下の通りの意味を持ちます。

`MI_COMPRESSION_LZ` | LZ77形式で圧縮されたデータ
`MI_COMPRESSION_HUFFMAN` | Huffman 形式で圧縮されたデータ
`MI_COMPRESSION_RL` | ランレングス形式で圧縮されたデータ
`MI_COMPRESSION_DIFF` | 差分フィルタがかけられたデータ

## 内部動作

データの先頭4バイトを読み、その値をを元に圧縮タイプを決定します。

## 参照

`MI_UncompressLZ*, MI_UncompressHuffman, MI_UncompressRL*, MI_UnfilterDiff*
MI_GetUncompressedSize
`

## 履歴

2004/06/18 初版