Form1 ロード時に以下の順で接続を試みる.
Lucam.Connect() を実行する
ImagingSource デバイス一覧を走査する
IScam.Connect() で試行するどのカメラも接続できない場合
DFK 33UX178 → DFK33UX178)が一致するものを選んで開く(IScamDeviceSelector).[デバイス名].xml(デバイス状態ファイル)は設定の適用だけに使う(LoadDeviceStateFromFile(file, false)).ファイルに書かれた個体(シリアル番号)は開かないため,同じ機種なら別の個体でも接続できる.
LoadDeviceStateFromFile(file, true) でファイルのデバイスを開いていたため,同梱の DFK33UX178.xml(シリアル 41520093 の個体)と別の個体では接続できず,例外が外へ漏れていた(2026-10-08 に実機テストで発見して修正).ErrorMsg に理由を設定して false を返す(起動時の接続フローが次のデバイスを試せる).config.xml の <カメラ名>/ROI から ROI 設定を読み込む.FrameQueueSink をシンクに設定してライブ開始する.FrameQueueSink の Retrieve コールバックでフレームを受け取る..T())し,ROI を切り出して表示する.FrameQueueSink → FrameSnapSink に切り替える.SnapSingle() で1フレームずつ取得して _shots に蓄積する.FrameQueueSink に戻す.LucamNumCameras() で接続台数を確認する(0台または2台以上はエラー).0x49f → Lw110).LucamRgbPreviewCallback コールバックを登録する.config.xml の <Lucam> からカメラパラメータを設定して,プレビューを開始する.LucamRgbPreviewCallback でフレームを受け取る..T())して表示する(ROI クリップなし).LucamEnableFastFrames() でスナップ撮影モードに切り替える.LucamTakeFastFrame() でRAW画像を取得し,LucamConvertFrameToRgb24() でRGB変換する.LucamDisableFastFrames() で通常モードに戻す.チャート検出後(_calibrating が Calib/Frames にセットされた後),各フレームで以下の処理を行う.
白色票(_chartMasks[12],24色票の13番)の平均 RGB 値を測定する
Calib/UpdateInterval フレームごとにゲインを更新する
ratio = (target / current - 1) * UpdateRate + 1VCDRangeProperty.Value を直接更新する_snap.Gain* を更新し SetCameraParam() で反映する_calibrating をデクリメントし,0 になったら CalcTcc() を呼び出す
SetSaveFolder(note) が保存先フォルダを以下の書式で生成する.
[SaveFolder]/[yyyy-MM-dd]/[HH_mm_ss]-[note]/
SaveFolder は config.xml の <File/SaveFolder> で指定する.note は「データ名」(撮影時)または「校正」(キャリブ時).