+++ /dev/null
-using System;\r
-using System.Collections.Generic;\r
-using System.Text;\r
-using System.Windows.Forms;\r
-\r
-namespace DTXCreator.WAV_BMP_AVI\r
-{\r
- internal class CAVIキャッシュ\r
- {\r
- public Dictionary<int, CAVI> dicAVIディクショナリ = new Dictionary<int, CAVI>();\r
- public int n現在のキャッシュアイテム数\r
- {\r
- get\r
- {\r
- if( this.dicAVIディクショナリ == null )\r
- {\r
- return 0;\r
- }\r
- return this.dicAVIディクショナリ.Count;\r
- }\r
- }\r
-\r
- public CAVI tAVIをキャッシュから検索して返す( int nAVI番号1to1295 )\r
- {\r
- CAVI cavi;\r
- if( ( nAVI番号1to1295 < 1 ) || ( nAVI番号1to1295 > 36 * 36 - 1 ) )\r
- {\r
- throw new Exception( "AVI番号が範囲を超えています。-> [" + nAVI番号1to1295 + "]" );\r
- }\r
- if( this.dicAVIディクショナリ.TryGetValue( nAVI番号1to1295, out cavi ) )\r
- {\r
- return cavi;\r
- }\r
- return null;\r
- }\r
- public CAVI tAVIをキャッシュから検索して返す_なければ新規生成する( int nAVI番号1to1295 )\r
- {\r
- if( ( nAVI番号1to1295 < 1 ) || ( nAVI番号1to1295 > 36 * 36 - 1 ) )\r
- {\r
- throw new Exception( "AVI番号が範囲を超えています。-> [" + nAVI番号1to1295 + "]" );\r
- }\r
- CAVI cavi = null;\r
- if( !this.dicAVIディクショナリ.TryGetValue( nAVI番号1to1295, out cavi ) )\r
- {\r
- cavi = new CAVI();\r
- cavi.nAVI番号1to1295 = nAVI番号1to1295;\r
- this.tキャッシュに追加する( cavi );\r
- }\r
- return cavi;\r
- }\r
- public void tAVIをキャッシュから削除する( int nAVI番号1to1295 )\r
- {\r
- if( ( nAVI番号1to1295 < 1 ) || ( nAVI番号1to1295 > 36 * 36 - 1 ) )\r
- {\r
- throw new Exception( "AVI番号が範囲を超えています。-> [" + nAVI番号1to1295 + "]" );\r
- }\r
- CAVI cavi = null;\r
- if( this.dicAVIディクショナリ.TryGetValue( nAVI番号1to1295, out cavi ) )\r
- {\r
- this.dicAVIディクショナリ.Remove( nAVI番号1to1295 );\r
- }\r
- }\r
- public void tキャッシュに追加する( CAVI ac追加するAVI )\r
- {\r
- CAVI cavi;\r
- if( this.dicAVIディクショナリ.TryGetValue( ac追加するAVI.nAVI番号1to1295, out cavi ) )\r
- {\r
- this.dicAVIディクショナリ.Remove( ac追加するAVI.nAVI番号1to1295 );\r
- }\r
- this.dicAVIディクショナリ.Add( ac追加するAVI.nAVI番号1to1295, ac追加するAVI );\r
- }\r
- public void tキャッシュに追加する( ListViewItem lvi )\r
- {\r
- CAVI cavi = new CAVI();\r
- cavi.tコピーfrom( lvi );\r
- this.tキャッシュに追加する( cavi );\r
- }\r
- public void t空にする()\r
- {\r
- this.dicAVIディクショナリ.Clear();\r
- }\r
- }\r
-}\r