# ディレクトリ構成 (Directory Structure)

## 全体構成 (Overview)

```text
TIASshot/
├── CLAUDE.md                   ← AI向けガイドライン（ドキュメント・コーディング規則の参照）
├── README.md                   ← プロジェクト概要
├── TIASshot.sln                ← Visual Studio ソリューションファイル
├── TIASshot/                   ← メインプロジェクト
├── TIASshot.Tests/             ← テストプロジェクト（NUnit / x64）
└── docs/                       ← ドキュメント
```

※ メインプロジェクト `TIASshot/` 配下のソース一覧（下記）はリファクタリング前の旧構成のままドリフトしている（現状は `Cameras/`・`UI/`・`ChartDetection/`・`ColorCorrection/`・`Utils/` 等に分離済み）．別途修正が必要．

## メインプロジェクト TIASshot/ (Main Project)

### ソースコード

```text
├── Program.cs                  ← エントリポイント
├── Form1.cs                    ← メインフォーム（UI・操作イベント）
├── Form1.Designer.cs           ← メインフォームのデザイナー自動生成コード
├── PreviewMonitor.cs           ← プレビューモニタフォーム
├── PreviewMonitor.Designer.cs  ← プレビューモニタのデザイナー自動生成コード
├── CameraBase.cs               ← カメラ制御の基底クラス（共通処理）
├── IScam.cs                    ← ImagingSource カメラの実装
├── Lucam.cs                    ← Lumenera カメラの実装
├── Config.cs                   ← config.xml の読み込みユーティリティ
└── LightSource.cs              ← 光源（シリアル通信）制御
```

### 設定・データファイル

```text
├── config.xml                  ← アプリケーション設定（パラメータ定義）
├── DFK33UX178.xml              ← ImagingSource DFK33UX178 カメラ設定
├── DFK23UX249.xml              ← ImagingSource DFK23UX249 カメラ設定
├── tcc_srgb.csv                ← TCC sRGB 変換参照値（24色票×3ch）
└── tcc_xyz.csv                 ← TCC XYZ 変換参照値（24色票×3ch）
```

### 外部ライブラリ・リソース

```text
├── lumenera.api.dll            ← Lumenera SDK（同梱）
├── lumenera.api.xml            ← Lumenera SDK ドキュメント
├── CalibDone.wav               ← キャリブレーション完了音
├── OneShot.wav                 ← 1枚撮影完了音
├── MultiShot.wav               ← 連続撮影完了音
└── main.ico                    ← アプリケーションアイコン
```

### プロジェクト設定

```text
├── TIASshot.csproj             ← プロジェクトファイル
├── App.config                  ← .NET アプリケーション設定
├── packages.config             ← NuGet パッケージ一覧
└── Properties/
    ├── AssemblyInfo.cs         ← アセンブリ情報
    ├── Resources.Designer.cs   ← リソース自動生成コード
    └── Settings.Designer.cs    ← アプリ設定自動生成コード
```

## テストプロジェクト TIASshot.Tests/ (Test Project)

```text
TIASshot.Tests/
├── TIASshot.Tests.csproj       ← テストプロジェクトファイル（net48 / x64）
├── packages.config             ← NuGet パッケージ一覧（NUnit 等）
├── IoUtilTests.cs              ← CSV 読み書き往復のテスト
├── ConfigTests.cs              ← config.xml パースのテスト
└── ColorCorrectorTests.cs      ← 次元拡張・変換行列・色変換のテスト
```

## ドキュメント docs/ (Documents)

```text
docs/
├── 01_GUIDE/   ← チームルール・規約（命名，Git，コーディング，コメント）
├── 02_ENV/     ← 開発環境・構成に関するドキュメント（本ディレクトリ）
├── 03_PLAN/    ← 進行計画・要件定義（リファクタリング計画，バグ修正計画）
├── 04_SPEC/    ← ユーザーから見える仕様（機能仕様，設定ファイル仕様）
├── 05_TECH/    ← クラス設計・アルゴリズム等の技術設計（カメラ制御，色補正処理）
└── 06_TEST/    ← テスト計画・品質保証（テスト仕様）
```
