/*--------------------------------------------------------------------------- Project: ImageDb File: ImageIOUtility.h ユーティリティ ---------------------------------------------------------------------------*/ #ifndef IMAGE_IO_UTILITY_H_ #define IMAGE_IO_UTILITY_H_ #include #include #include "../Core/ImageDbResult.h" namespace imgdb { namespace util { /*!---------------------------------------------------------------------- @brief 管理されている写真枚数を取得する @return 写真枚数 @details SDカードが認識できていない場合はゼロを返します。 -----------------------------------------------------------------------*/ int GetRegisteredPictureNum(); /*!--------------------------------------------------------------------------* @brief 写真の残り撮影枚数を見積もる @return 写真の残り撮影枚数 @details 残り空き容量から残り撮影枚数を見積もります。 この見積もり枚数はニンテンドー3DSカメラと同じです。 SDカードが認識できていない場合はゼロを返します。 *---------------------------------------------------------------------------*/ int EstimateRemainPictureNum(); /*!--------------------------------------------------------------------------* @brief 写真のタイトルユニークIDが指定のIDと同じかチェックする @param[in] pPath 写真のパス @param[in] nUId タイトルユニークID @return 同じ場合はtrue @details pPathはJpeg/MpSaver、写真選択アプレットで取得したパスを指定します。 写真が読み込めないなどの理由で確認できない場合はfalseを返します。 *---------------------------------------------------------------------------*/ bool IsSamePictureTitleUniqueId(const wchar_t* pPath, u32 nUId); /*!--------------------------------------------------------------------------* @brief 写真を削除する @param[in] pPath 写真のパス @param[in] nUId タイトルユニークID @return 結果 @details pPathはJpeg/MpSaver、写真選択アプレットで取得したパスを指定します。 nUIdにはアプリのタイトルユニークIDを指定します。 このIDと写真を比較し一致した(このアプリが撮影した写真と判断した)場合のみ、 写真の削除が行われます。 不一致の場合はResultErrorPermissionDeniedを返し削除に失敗します。 *---------------------------------------------------------------------------*/ Result DeletePicture(const wchar_t* pPath, u32 nUId); /*!---------------------------------------------------------------------- @brief 写真を集めてImageDb管理の写真にする @return 処理結果 @details SDカードにある ImageDb に管理されていない写真を探して ImageDb に登録します。
また、登録した情報を管理ファイルへ反映させます。
PC上でSDカードに直接写真を追加削除された場合などに、それらの写真を管理す るためには、この関数を呼び出す必要があります。

扱う画像のパスについては「ImageDb プログラミングマニュアル」をご確認くだ さい。
ただし、以下の点にご注意ください。
・MP ファイルに付属する同一名の JPG ファイルは無視される
・MP ファイルは付属の JPG ファイルがなくても検索は可能

この関数はSDカードの写真枚数によっては処理にかなりの時間が掛かります。
電源ボタン対応などのために処理を中断する場合は、この関数を呼び出した スレッドとは別のスレッドで StopCollect() を使用してください。 -----------------------------------------------------------------------*/ Result CollectPicture(); /*!---------------------------------------------------------------------- @brief 写真を集めの処理を中止する @details 別スレッドから、CollectPicture() の処理中止を要求します。
本関数を1度呼び出しただけでは中止を受け付けないことがあるため、 CollectPicture()から処理が返ってくるまで、中止要求を行い続ける必要があ ります。 -----------------------------------------------------------------------*/ void StopCollect(); } // end of namespace util } // end of namespace imgdb #endif // IMAGE_IO_UTILITY_H_