# NNS_G2dGetUnpacked*

## 構文

  `#include <nnsys/g2d/g2d_load.h>`

  `BOOL NNS_G2dGetUnpackedCellBank( void* pNcerFile, NNSG2dCellDataBank** ppCellBank );`
  `BOOL NNS_G2dGetUnpackedAnimBank( void* pNanrFile, NNSG2dAnimBankData** ppAnimBank );`
  `BOOL NNS_G2dGetUnpackedMCAnimBank( void* pNanrFile, NNSG2dAnimBankData** ppAnimBank );`
  `BOOL NNS_G2dGetUnpackedCharacterData( void* pNcgrFile, NNSG2dCharacterData** ppCharData );`
  `BOOL NNS_G2dGetUnpackedPaletteData( void* pNclrFile, NNSG2dPaletteData** ppPltData );`
  `BOOL NNS_G2dGetUnpackedPaletteCompressInfo( void* pNclrFile, NNSG2dPaletteCompressInfo** ppPltCmpInfo );`
  `BOOL NNS_G2dGetUnpackedEntityBank( void* pNenrFile, NNSG2dEntityDataBank** ppEntityBank );`
  `BOOL NNS_G2dGetUnpackedMultiCellBank( void* pNmcrFile, NNSG2dMultiCellDataBank** ppMCBank );`
  `BOOL NNS_G2dGetUnpackedBGCharacterData( void* pNcgrFile, NNSG2dCharacterData** ppCharData );`
  `BOOL NNS_G2dGetUnpackedScreenData( void* pNscrFile, NNSG2dScreenData** ppScrData );`
  `BOOL NNS_G2dGetUnpackedCharacterPosInfo( void* pNcgrFile, NNSG2dCharacterPosInfo** ppCharPosInfo );`

## 引数

pNcerFile | [OUT] NCER ファイルロード結果
pNanrFile | [OUT] NANR ファイルロード結果
pNcgrFile | [OUT] NCGR ファイルロード結果
pNclrFile | [OUT] NCLR ファイルロード結果
pNenrFile | [OUT] NENR ファイルロード結果
pNmcrFile | [OUT] NMCR ファイルロード結果
pNscrFile | [OUT] NSCR ファイルロード結果
ppCellBank | [OUT] セルデータバンク
ppAnimBank | [OUT] アニメーション定義データバンク
ppCharData | [OUT] キャラクタデータ
ppPltData | [OUT] パレットデータ
ppPltCmpInfo | [OUT] パレット圧縮データ
ppEntityBank | [OUT] エンティティ定義データバンク
ppMCBank | [OUT] マルチセルデータバンク
ppScrData | [OUT] スクリーンデータ
ppCharPosInfo | [OUT] キャラクタ領域位置データ

## 返り値

データ取得の成否

## 説明

バイナリファイルから、各種データを展開した状態で取得します。
取得できなかった場合はFALSEを返し、ppXXXXで返される展開データへのポインタにNULLが設定されます。
各種バイナリデータを使用する前に必ず実行してください。
また、データに対して、一度のみ実行するようにしてください。
内部でメモリオフセット値のポインタ値への復元を行っています。

## 注意

#### NNS_G2dGetUnpackedCharacterData()と
NNS_G2dGetUnpackedBGCharacterData()の使い分けについて

キャラクタデータの展開を処理する関数として、NNS_G2dGetUnpackedCharacterData()と NNS_G2dGetUnpackedBGCharacterData()が存在します。
NNS_G2dGetUnpackedCharacterData()はOBJ用キャラクタデータを処理する関数で、NNS_G2dGetUnpackedBGCharacterData()はBG用キャラクタデータを処理する関数です。
処理内容に関しては、ほとんど同一ですが、不正なデータをチェックするアサート文の条件が異なります。そのため、誤って使用すると、デバックビルド時に正しく動作しないことになります。 ご注意ください。

## 参照

なし

## 履歴

2009/03/31 展開データポインタにNULLが設定される件を追加
2005/09/01 NNS_G2dGetUnpackedCharacterPosInfo の追加, 注意書きの追加
2004/10/04 NNS_G2dGetUnpackedPaletteCompressInfo の追加
2004/09/02 NNS_G2dGetUnpackedBGCharacterData, NNS_G2dGetUnpackedScreenData の追加
2004/05/28 初版