acapy


Nameacapy JSON
Version 1.1.0 PyPI version JSON
download
home_pagehttps://faq-avaldata.dga.jp/faq_list.html?category=35
Summaryacapy package (Python bindings for AVALDATA AcapLib2 )
upload_time2024-03-07 00:37:53
maintainer
docs_urlNone
authorAVALDATA
requires_python
license3-Clause BSD License
keywords avaldata acapy acaplib2
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            acapy package (Python bindings for AVALDATA AcapLib2 )

# Index

- [**Installation**](#Installation)
- [**Dependencies**](#Dependencies)
- [**LICENSE**](#LICENSE)
- [**AcaPy Class**](#AcaPy-Class)
- [**CameraControl Class**](#CameraControl-Class)
- [**GraphicsBox Class**](#GraphicsBox-Class)
- [**Changelog**](#Changelog)



# Installation

```python
pip install acapy
```



# Dependencies

| AcaPyバージョン                                      | 依存関係                                                     |
| ---------------------------------------------------- | ------------------------------------------------------------ |
| acapy 1.1.0                                          | Python3.8以降<br />[AcapLib2](https://www.avaldata.co.jp/products/imaging/item/sdk-acaplib2) Ver.8.2.0以降<br />NumPy<br />Pillow(Tkinterサンプル使用時)<br />OpenCV(サンプルの使用時) |
| [acapy 1.0.0](https://pypi.org/project/acapy/1.0.0/) | Python3.6以降<br />[AcapLib2](https://www.avaldata.co.jp/products/imaging/item/sdk-acaplib2) Ver.7.3.0のみ<br />NumPy<br />Pillow(Tkinterサンプル使用時)<br />OpenCV(サンプルの使用時) |



# LICENSE

```
BSD 3-Clause License

Copyright (c) 2024, AVALDATA
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
   list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
   this list of conditions and the following disclaimer in the documentation
   and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its
   contributors may be used to endorse or promote products derived from
   this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
```



# AcaPy Class

AcapLib2のPythonラッパークラスです。



## Examples

### Snap sample

sキーの入力ごとに、画像1枚を取得します。

qキーの入力でプログラムを終了します。

連続で画像取り込みを行う場合はGrab sampleを参照ください。

```python
import sys

import cv2      # OpenCV
import acapy    # AcaPy

# ----------------------------------------------------------------
# AcaPyクラスのインスタンス
capture = acapy.AcaPy()

if capture.is_opened is False:
    # 画像入力ボードが見つからないときは終了
    print("Board or Camera not recognized.")
    capture.dispose()
    sys.exit(0)

# iniファイル(ボード設定ファイル)の読込、AcapLib2のiniファイルと共通です。
# iniファイルは実際に使用するカメラ用のファイルを指定してください。
ret = capture.load_inifile("./AreaSensor_mono.ini")
if ret == 0:
    # iniファイルの読込に失敗したとき(ファイルが見つからない、ファイルの設定が異なるなど)
    print("Load inifile error")
    capture.dispose()
    sys.exit(0)

# ----------------------------------------------------------------
# 画像取込

# 画像表示ウィンドウ作成(sキー入力:Snap, qキー入力:終了)
WINDOW_TITLE = "AcaPy Sample [\"s\"=snap,\"q\"=quit]"
cv2.namedWindow(WINDOW_TITLE, cv2.WINDOW_NORMAL)

while True:
    # キー入力
    key = cv2.waitKey(1) & 0xFF

    if key == ord('s'):
        # snap(画像1枚の取得)
        print("[snap]")
        ret, frame = capture.snap()
        if ret == acapy.AcaPy.OK:
            cv2.imshow(WINDOW_TITLE, frame)

    elif key == ord('q') or key == 27: # q もしくは escキーで終了
        # quit
        print("[quit]")
        break

capture.dispose() # AcaPyクラスのリソースの解放
cv2.destroyAllWindows()
```



### Grab sample

gキーの入力で画像の連続取込(Grab)を開始/停止します。

qキーの入力でプログラムを終了します。

```python
import sys

import cv2      # OpenCV
import acapy    # AcaPy

# ----------------------------------------------------------------
# AcaPyクラスのインスタンス
capture = acapy.AcaPy()

if capture.is_opened is False:
    # 画像入力ボードが見つからないときは終了
    print("Board or Camera not recognized.")
    capture.dispose()
    sys.exit(0)

# iniファイル(ボード設定ファイル)の読込、AcapLib2のiniファイルと共通です。
ret = capture.load_inifile("./AreaSensor_mono.ini")
if ret == 0:
    # iniファイルの読込に失敗したとき(ファイルが見つからない、ファイルの設定が異なるなど)
    print("Load inifile error")
    capture.dispose()
    sys.exit(0)

# 画像表示ウィンドウ作成(sキー入力:Snap, gキー入力:Grab, qキー入力:終了)
WINDOW_TITLE = "AcaPy Sample [\"g\"=grab,\"q\"=quit]"
cv2.namedWindow(WINDOW_TITLE, cv2.WINDOW_NORMAL)

# ----------------------------------------------------------------
# 画像取込
while True:
    # 前回取得した画像の次の画像から今回までの画像を取得
    ret, frames, count, frame_no = capture.read_frames()

    if frames is not None:
        # 最新の画像を表示
        print(f"[grab] FrameNo={frame_no}, count={count}, error_info={ret}")
        cv2.imshow (WINDOW_TITLE, frames[count - 1] )

    # キー入力
    key = cv2.waitKey(1) & 0xFF

    if key == ord('g'):
        # grab(連続画像取得)
        if capture.is_grab is True:
            # grab中のときはgrabを停止する
            capture.grab_stop()
            print("[grab stop]")

        else:
            # grab中でないときはGrabを開始する
            capture.grab_start()
            print("[grab start]")

    elif key == ord('q') or key == 27: # q もしくは escキーで終了
        if capture.is_grab is True:
            # grab中のときはgrabを停止する
            capture.grab_stop()
            print("[grab stop]")
        break
        
capture.dispose() # AcaPyクラスのリソースの解放
cv2.destroyAllWindows()
```



## Constructors

ボード番号、チャンネル番号を指定して、画像入力ボードをオープンします。
実際にボードがオープン出来たかどうかは、**is_opened**プロパティで確認してください。

```
def __init__(self, board_id: int = 0, ch: int = 1, debug_print: bool = True):
```

***パラメータ***

| 名前        | 型   | 説明                                                         |
| ----------- | ---- | ------------------------------------------------------------ |
| board_id    | int  | 0以上のボード番号を指定します。                              |
| ch          | int  | 1以上のチャンネル番号を指定します。                          |
| debug_print | bool | Trueを指定した場合、AcaPyクラスメソッドにエラー等が発生した場合、コンソールにエラー情報が表示されます。Falseを指定すると何も表示されません。 |



## Properties

プロパティの値は、値を設定後、reflect_param()メソッドを実行すると設定が画像入力ボードに反映されます。
reflect_param()メソッドを実行し忘れた場合、grab_start()メソッド内でreflect_param()メソッドが実行されます。

| Properties                              | Descriptoin                                                  | Get/Set |
| --------------------------------------- | ------------------------------------------------------------ | :-----: |
| a_cw_ccw                                | エンコーダA相の回転方向を取得します。                        |   ●/-   |
| acaplib2_version                        | AcapLib2のDLLバージョンを取得します。                        |   ●/-   |
| alarm_status                            | キャプチャボードのアラーム情報を取得します。                 |   ●/●   |
| b_cw_ccw                                | エンコーダB相の回転方向を取得します。                        |   ●/-   |
| bayer_enable                            | ベイヤー変換の有効/無効を取得・設定します。                 |   ●/●   |
| bayer_grid                              | ベイヤー変換開始位置のパターンを取得・設定します。           |   ●/●   |
| bayer_input_bit                         | Bayer画像のBit数を取得・設定します。                         |   ●/●   |
| bayer_lut_data                          | 編集するLUTデータ配列(リスト)を取得・設定します。            |   ●/●   |
| bayer_lut_edit                          | BayerLUTの編集を開始・停止します。                           |   ●/●   |
| bayer_output_bit                        | Bayer変換後のBit数を取得・設定します。                       |   ●/●   |
| board_bit                               | ボードで確保する画像用メモリのビット幅を取得します。         |   ●/-   |
| board_error                             | ボードエラーを取得・クリアします。                           |   ●/●   |
| board_id                                | 初期化されたボードIDを取得します。                           |   ●/-   |
| board_name                              | 初期化されたボード名を取得します。                           |   ●/-   |
| board_temp                              | 基板温度を取得します。                                       |   ●/-   |
| buffer_zero_fill                        | 初期化時にバッファをゼロクリアするかを取得・設定します。     |   ●/●   |
| camera_bit                              | カメラから入力する画像のビット数を取得・設定します。         |   ●/●   |
| camera_state                            | カメラの接続状態を取得します。                               |   ●/-   |
| cancel_initialize                       | 初期化と内部バッファ確保の設定を取得・設定します。           |   ●/●   |
| capture_flag                            | キャプチャ状況を取得します。<br />0: Grab停止中<br />1: Grab中 |   ●/-   |
| cc1_polarity                            | CC1信号の出力レベルを取得・設定します。                      |   ●/●   |
| cc2_polarity                            | CC2信号の出力レベルを取得・設定します。                      |   ●/●   |
| cc3_polarity                            | CC3信号の出力レベルを取得・設定します。                      |   ●/●   |
| cc4_polarity                            | CC4信号の出力レベルを取得・設定します。                      |   ●/●   |
| cc_cycle                                | CC信号の周期[usec]を取得・設定します。                       |   ●/●   |
| cc_cycle_ex                             | CC信号の周期[100nsec]を取得・設定します。                    |   ●/●   |
| cc_delay                                | CC信号の出力遅延時間[usec]を取得・設定します。               |   ●/●   |
| cc_enable                               | CC信号出力の有効/無効を取得・設定します。<br />0: CC信号を出力しない<br />1: CC信号を出力する |   ●/●   |
| cc_out_no                               | CC信号の番号(1~4)を取得・設定します。                       |   ●/●   |
| cc_polarity                             | CC信号の論理を取得・設定します。                             |   ●/●   |
| cc_stop                                 | 画像入力停止後、CC出力を行うかの設定を取得・設定します。     |   ●/●   |
| ch                                      | 初期化されたチャンネル番号を取得します。                     |   ●/-   |
| channel_num                             | ボードの総チャンネル数を取得します。                         |   ●/-   |
| chatter_separate                        | 外部トリガ検出無効時間の設定方法を取得・設定します。         |   ●/●   |
| count_cc                                | CC信号の出力回数を取得します。                               |   ●/-   |
| count_exttrig                           | EXTTRIG(外部トリガ)信号の入力回数を取得します。              |   ●/-   |
| count_fval                              | FVAL信号の入力回数を取得します。                             |   ●/-   |
| count_lval                              | LVAL信号の入力回数を取得します。                             |   ●/-   |
| custom                                  | FPGAカスタマイズが行われた番号を取得します。                 |   ●/-   |
| cxp_bdlink_timeout                      | CXPカメラリンクアップ時の待機時間を取得・設定します。(ボード側) |   ●/●   |
| cxp_bitrate                             | CXPのビットレートを取得・設定します。                        |   ●/●   |
| cxp_camlink_timeout                     | CXPカメラリンクアップ時の待機時間を取得・設定します。(カメラ側) |   ●/●   |
| cxp_connection_num                      | CXPの接続されているカメラへコネクション数の設定を取得・設定します。 |   ●/●   |
| cxp_link_speed                          | CXPのリンク速度を取得・設定します。                          |   ●/●   |
| cxp_phy_error_count                     | CXPのPHYエラーの回数を取得します。                           |   ●/-   |
| data_mask_ex                            | カメラリンクポートI~Jのマスク値を取得・設定します。         |   ●/●   |
| data_mask_lower                         | カメラリンクポートA~Dのマスク値を取得・設定します。         |   ●/●   |
| data_mask_upper                         | カメラリンクポートE~Hのマスク値を取得・設定します。         |   ●/●   |
| debug_print_enabled                     | エラー情報などをコンソール画面に表示する(True)か、しない(False)かを取得・設定します。 |   ●/●   |
| device                                  | 実装されているデバイス名を取得します。                       |   ●/-   |
| dval_enable                             | カメラデータ入力時のDVAL信号参照の有効(1)/無効(0)を取得・設定します。 |   ●/●   |
| encoder_abs_count                       | エンコーダ絶対カウンタ値を取得します。                       |   ●/-   |
| encoder_abs_mode                        | 絶対カウントモードを取得・設定します。                       |   ●/●   |
| encoder_abs_start                       | 絶多値エンコーダの開始/停止の制御値を取得・設定します。     |   ●/●   |
| encoder_agr_count                       | 相対位置エンコーダ使用時の一致パルス数を取得します。         |   ●/-   |
| encoder_all_count                       | 相対位置エンコーダ使用時の総カウント値を取得します。         |   ●/-   |
| encoder_compare_reg_1                   | エンコーダ比較レジスタ1の値を取得・設定します。<br />エンコーダカウント開始位置のパルス数の設定 |   ●/●   |
| encoder_compare_reg_2                   | エンコーダ比較レジスタ2の値を取得・設定します。<br />エンコーダパルスカウントの分周の設定 |   ●/●   |
| encoder_count                           | エンコーダ相対カウンタ値を取得します。                       |   ●/-   |
| encoder_direction                       | エンコーダ入力パルス方向を取得・設定します。<br />0: CW<br />1:CCW |   ●/●   |
| encoder_enable                          | エンコーダの無効/有効/絶対カウントモードを取得・設定します。<br />0: 無効<br />1: 有効<br />2: 絶対カウントモード |   ●/●   |
| encoder_mode                            | エンコーダ動作モードを取得・設定します。<br />0: エンコーダスキャンモード<br />1: エンコーダライン選択モード |   ●/●   |
| encoder_phase                           | エンコーダ入力パルス選択を取得・設定します。<br />0: AB相(4逓倍カウントになります)<br />0: A相(2逓倍カウントになります) |   ●/●   |
| encoder_rlt_all_count                   | 相対カウント使用時の、総カウント値を取得します。             |   ●/-   |
| encoder_rlt_count                       | 相対カウント使用時の、相対カウント値を取得します。           |   ●/-   |
| encoder_start                           | 外部トリガをエンコーダで使用する方法を取得・設定します。<br />0: 外部トリガをエンコーダカウント開始に用いない<br />1: 外部トリガをエンコーダカウント開始に用いる<br />2: 外部トリガの入力ごとに1ライン の画像を取り込みます。 |   ●/●   |
| encoder_z_phase                         | エンコーダカウント開始にZ相を使用するかの設定を取得・設定します。<br />0: Z相を使用しない<br />1: Z相の入力からエンコーダのカウントを開始する。 |   ●/●   |
| exposure                                | CC信号の出力幅(露光時間)[usec]を取得・設定します。         |   ●/●   |
| exposure_ex                             | CC信号の出力幅(露光時間)[100nsec]を取得・設定します。      |   ●/●   |
| express_link                            | PCI-Expressバスに接続されているリンク幅を取得します。        |   ●/-   |
| external_trigger_chatter                | 外部トリガ検出無効時間[usec]を取得・設定します。             |   ●/●   |
| external_trigger_chatter<br />_separate | 外部トリガ検出遅延時間[usec]を設定・取得します。             |   ●/●   |
| external_trigger_delay                  | 外部トリガ検出遅延時間[usec]を取得・設定します。             |   ●/●   |
| external_trigger_enable                 | 外部トリガに使用する信号選択を取得・設定します。<br />0: 無効<br />1: TTL<br />2: RS-422<br />3: 新規作動<br />4: PHOTO<br />詳細はAcapLib2のマニュアルを参照ください。 |   ●/●   |
| external_trigger_mode                   | 外部トリガを使用してCC信号を出力する方法を取得・設定します。<br />0: 外部トリガ入力に合わせて1回の撮影を行います。<br />1: 外部トリガ入力から連続的に撮影を行います。 |   ●/●   |
| external_trigger_polarity               | 外部トリガの検出極性を取得・設定します。<br />0: 負極性(ローアクティブ)(初期値)<br />1: 正極性(ハイアクティブ) |   ●/●   |
| fan_prm                                 | キャプチャボードの FAN 回転数を取得します。                  |   ●/-   |
| fifo_full                               | FIFOステータスを取得します。                                 |   ●/-   |
| fpga_temp                               | FPGA温度を取得します。                                       |   ●/-   |
| fpga_version                            | FPGAバージョンを取得します。                                 |   ●/-   |
| frame_no                                | 入力が完了したフレーム数を取得します。                       |   ●/-   |
| freq_a                                  | A相の周波数(Hz)を取得します。                                |   ●/-   |
| freq_b                                  | B相の周波数(Hz)を取得します。                                |   ●/-   |
| freq_d                                  | D相の周波数(Hz)を取得します。                                |   ●/-   |
| freq_e                                  | E相の周波数(Hz)を取得します。                                |   ●/-   |
| freq_f                                  | F相の周波数(Hz)を取得します。                                |   ●/-   |
| freq_g                                  | G相の周波数(Hz)を取得します。                                |   ●/-   |
| freq_h                                  | H相の周波数(Hz)を取得します。                                |   ●/-   |
| freq_fval                               | FVALの周波数(kHz)を取得します。                              |   ●/-   |
| freq_lval                               | LVALの周波数(kHz)を取得します。                              |   ●/-   |
| freq_opt1                               | OPT1の周波数(kHz)を取得します。                              |   ●/-   |
| freq_opt2                               | OPT2の周波数(kHz)を取得します。                              |   ●/-   |
| freq_opt3                               | OPT3の周波数(kHz)を取得します。                              |   ●/-   |
| freq_opt4                               | OPT4の周波数(kHz)を取得します。                              |   ●/-   |
| freq_opt5                               | OPT5の周波数(kHz)を取得します。                              |   ●/-   |
| freq_opt6                               | OPT6の周波数(kHz)を取得します。                              |   ●/-   |
| freq_opt7                               | OPT7の周波数(kHz)を取得します。                              |   ●/-   |
| freq_opt8                               | OPT8の周波数(kHz)を取得します。                              |   ●/-   |
| freq_ttl1                               | TTL1の周波数(Hz)を取得します。                               |   ●/-   |
| freq_ttl2                               | TTL2の周波数(Hz)を取得します。                               |   ●/-   |
| freq_ttl3                               | TTL3の周波数(Hz)を取得します。                               |   ●/-   |
| freq_ttl4                               | TTL4の周波数(Hz)を取得します。                               |   ●/-   |
| freq_ttl5                               | TTL5の周波数(Hz)を取得します。                               |   ●/-   |
| freq_ttl6                               | TTL6の周波数(Hz)を取得します。                               |   ●/-   |
| freq_ttl7                               | TTL7の周波数(Hz)を取得します。                               |   ●/-   |
| freq_ttl8                               | TTL8の周波数(Hz)を取得します。                               |   ●/-   |
| freq_z                                  | Z相の周波数(Hz)を取得します。                                |   ●/-   |
| gpin_pin_sel                            | GP_INピン割込みピンを取得・設定します。                      |   ●/●   |
| gpin_pol                                | GP_INのレベルをBit情報で取得します。                         |   ●/-   |
| gpout_sel                               | GP_OUTピンの出力設定を取得・設定します。                     |   ●/●   |
| gpout_pol                               | GP_OUTピンの出力レベルを取得・設定します。                   |   ●/●   |
| handle                                  | 初期化されたボードハンドルを取得します。                     |   ●/-   |
| height                                  | 画像入力サイズの高さを取得・設定します。                     |   ●/●   |
| infrared_enable                         | BGRIの有効/無効を取得・設定します。<br />0: BGRIフォーマット以外<br />1: BGRIフォーマット(4ch画像データ) |   ●/●   |
| interrupt_line                          | 1フレーム入力ライン数カウント間隔を取得・設定します。       |   ●/●   |
| interval_exttrig_1                      | 認識した外部トリガ間隔の時間(カウント値)の最新の値を取得します。 |   ●/-   |
| interval_exttrig_2                      | 認識した外部トリガ間隔の時間(カウント値)の2番目に新しい値を取得します。 |   ●/-   |
| interval_exttrig_3                      | 認識した外部トリガ間隔の時間(カウント値)の3番目に新しい値を取得します。 |   ●/-   |
| interval_exttrig_4                      | 認識した外部トリガ間隔の時間(カウント値)の4番目に新しい値を取得します。 |   ●/-   |
| is_grab                                 | Grab中かどうかを取得します。<br />もしくは、grab_start()後にgrab_stop()を実行していない。<br />True: grab中<br />False: grabしていない |   ●/-   |
| is_opened                               | キャプチャボードのOpenに成功したかどうかを取得します。       |   ●/-   |
| line_no                                 | 入力が完了したライン数を取得します。                         |   ●/-   |
| line_reverse                            | カメラから入力した画像データの左右反転設定を取得・設定します。<br />0: 左右反転しない<br />1: 左右反転する |   ●/●   |
| lval_delay                              | カメラから入力するLVALのX方向遅延量(clock)を取得・設定します。 |   ●/●   |
| lvds_cclk_sel                           | カメラ駆動クロックを取得・設定します。                       |   ●/●   |
| lvds_phase_sel                          | 入力サンプリングの位相を取得・設定します。                   |   ●/●   |
| lvds_synclt_sel                         | SYNCLTピンの入出力を取得・設定します。                       |   ●/●   |
| mem_num                                 | リングバッファの画像面数を取得・設定します。                 |   ●/●   |
| narrow10bit_enable                      | データ詰め(10bit画像のビットギャップなし)転送の有効/無効を取得・設定します。<br />0: データ詰め転送無効<br />1: データ詰め転送有効 |   ●/●   |
| pix_shift                               | カメラから入力するデータを右シフトするビット数を取得・設定します。 |   ●/●   |
| pocl_lite_enable                        | PoCL-Liteカメラ用設定の有効(1)/無効(0)を取得・設定します。  |   ●/●   |
| port_a_assign                           | カメラからの入力データに対する、ボードポートAの割り振りを設定します。 |   ●/●   |
| port_b_assign                           | カメラからの入力データに対する、ボードポートBの割り振りを設定します。 |   ●/●   |
| port_c_assign                           | カメラからの入力データに対する、ボードポートCの割り振りを設定します。 |   ●/●   |
| port_d_assign                           | カメラからの入力データに対する、ボードポートDの割り振りを設定します。 |   ●/●   |
| port_e_assign                           | カメラからの入力データに対する、ボードポートEの割り振りを設定します。 |   ●/●   |
| port_f_assign                           | カメラからの入力データに対する、ボードポートFの割り振りを設定します。 |   ●/●   |
| port_g_assign                           | カメラからの入力データに対する、ボードポートGの割り振りを設定します。 |   ●/●   |
| port_h_assign                           | カメラからの入力データに対する、ボードポートHの割り振りを設定します。 |   ●/●   |
| port_i_assign                           | カメラからの入力データに対する、ボードポートIの割り振りを設定します。 |   ●/●   |
| port_j_assign                           | カメラからの入力データに対する、ボードポートJの割り振りを設定します。 |   ●/●   |
| power_state                             | カメラ電源エラー状態を取得・クリアします。                   |   ●/●   |
| power_supply                            | カメラへの給電状態を取得・設定します。<br />0: 給電OFF<br />1: 給電ON |   ●/●   |
| reverse_dma_enable                      | 上下反転DMAの有効/無効を取得・設定します。<br />0: 無効<br />1: 有効 |   ●/●   |
| rgb_swap_enable                         | カラーデータのR, G, Bのデータ並びを入れ替えます。<br />0: 無効(BGR)<br />1: 有効(RGB) |   ●/●   |
| rolling_shutter                         | ローリングシャッタの有効/無効を取得・設定します。<br />0: ローリングシャッタを使用しない<br />1: ローリングシャッタを使用する |   ●/●   |
| scan_system                             | 取込を行うカメラの種類を取得・設定します。<br />0: エリアセンサ<br />1: ラインセンサ |   ●/●   |
| serial_no                               | ボードのシリアル番号を取得します。                           |   ●/-   |
| serial_read_wait_time                   | シリアル通信の受信完了までの待ち時間を取得・設定します。     |   ●/●   |
| start_frame_no                          | 取込を開始するフレーム番号(1, 2, 3…)を取得・設定します。     |   ●/●   |
| strobe_delay                            | ストロボ信号出力遅延時間[usec]を取得・設定します。           |   ●/●   |
| strobe_enable                           | ストロボ出力信号の有効/無効を取得・設定します。<br />0: ストロボ無効<br />1: ストロボ有効 |   ●/●   |
| strobe_pol                              | ストロボ信号の出力極性を取得・設定します。<br />0: 負極性(初期値)<br />1: 正極性 |   ●/●   |
| strobe_time                             | ストロボ信号出力時間[usec]を取得・設定します。               |   ●/●   |
| sync_ch                                 | 指定チャンネルの取込をどのchに同期されるかを取得・設定します。 |   ●/●   |
| sync_lt                                 | CC信号の出力をSYNCLT入力に同期されるかどうかを取得・設定します。 |   ●/●   |
| tag                                     | 任意使用のプロパティを取得・設定します。                     |   ●/●   |
| tap_arrange                             | カメラ入力タップの並べ替え方法を取得・設定します。           |   ●/●   |
| tap_arrange_x_size                      | カメラが1ラインとして出力する総画素数を取得・設定します。   |   ●/●   |
| tap_direction1                          | 複数のタップ入力を行う時、Tap1の入力方向を取得・設定します。 |   ●/●   |
| tap_direction2                          | 複数のタップ入力を行う時、Tap2の入力方向を取得・設定します。 |   ●/●   |
| tap_direction3                          | 複数のタップ入力を行う時、Tap3の入力方向を取得・設定します。 |   ●/●   |
| tap_direction4                          | 複数のタップ入力を行う時、Tap4の入力方向を取得・設定します。 |   ●/●   |
| tap_direction5                          | 複数のタップ入力を行う時、Tap5の入力方向を取得・設定します。 |   ●/●   |
| tap_direction6                          | 複数のタップ入力を行う時、Tap6の入力方向を取得・設定します。 |   ●/●   |
| tap_direction7                          | 複数のタップ入力を行う時、Tap7の入力方向を取得・設定します。 |   ●/●   |
| tap_direction8                          | 複数のタップ入力を行う時、Tap8の入力方向を取得・設定します。 |   ●/●   |
| tap_direction9                          | 複数のタップ入力を行う時、Tap9の入力方向を取得・設定します。 |   ●/●   |
| tap_direction10                         | 複数のタップ入力を行う時、Tap10の入力方向を取得・設定します。 |   ●/●   |
| tap_num                                 | 入力タップ数を取得・設定します。                             |   ●/●   |
| timeout                                 | grab_start()メソッドを実行してから画像入力が完了するまでの時間、もしくはgrab_stop()メソッドのフレーム入力待ちタイムアウト時間(msec単位の整数)を取得・設定します。 |   ●/●   |
| vertical_remap                          | Y方向特殊DMAの設定/無効を取得・設定します。<br />0: 無効<br />1: VERTICAL REMAP 有効<br />2: DUAL LINE有効 |   ●/●   |
| virtual_comport                         | 仮想COMポート番号を取得します。                              |   ●/-   |
| width                                   | 画像入力サイズの幅を取得・設定します。                       |   ●/●   |
| x_delay                                 | カメラ入力のX方向遅延量を取得・設定します。                  |   ●/●   |
| y_delay                                 | カメラ入力のY方向遅延行数を取得・設定します。                |   ●/●   |
| y_total                                 | カメラから入力する行数を取得・設定します。<br />y_totalを設定する場合は、必ずheight→y_totalの順に設定してください。 |   ●/●   |

※設定値の詳細は、下記のプロパティとAcapLib2の設定IDとの対応表示を参考にAcapLib2のマニュアル「SDK-AcapLib2 Library Manual for Windows(OM15018*).pdf」を参照願います。

| Properties                              | AcapLib2 ID                             | ini parameter                                    |
| --------------------------------------- | --------------------------------------- | ------------------------------------------------ |
| a_cw_ccw                                | ACL_A_CW_CCW                            | -                                                |
| acaplib2_version                        | -                                       | -                                                |
| alarm_status                            | ACL_ALARM_STATUS                        | -                                                |
| b_cw_ccw                                | ACL_B_CW_CCW                            | -                                                |
| bayer_enable                            | ACL_BAYER_ENABLE                        | USER_BAYER_ENABLE                                |
| bayer_grid                              | ACL_BAYER_GRID                          | USER_BAYER_GRID                                  |
| bayer_input_bit                         | ACL_BAYER_INPUT_BIT                     | USER_BAYER_INPUT_BIT                             |
| bayer_lut_data                          | ACL_BAYER_LUT_DATA                      | -                                                |
| bayer_lut_edit                          | ACL_BAYER_LUT_EDIT                      | -                                                |
| bayer_output_bit                        | ACL_BAYER_OUTPUT_BIT                    | USER_BAYER_OUTPUT_BIT                            |
| board_bit                               | ACL_BOARD_BIT                           | USER_GRABBER_BIT_DEPTH                           |
| board_error                             | ACL_BOARD_ERROR                         | -                                                |
| board_id                                | -                                       | -                                                |
| board_name                              | -                                       | -                                                |
| board_temp                              | ACL_BOARD_TEMP                          | -                                                |
| buffer_zero_fill                        | ACL_BUFFER_ZERO_FILL                    | -                                                |
| camera_bit                              | ACL_CAM_BIT                             | USER_CAMERA_BIT_DEPTH                            |
| camera_state                            | ACL_CAMERA_STATE                        | -                                                |
| cancel_initialize                       | ACL_CANCEL_INITIALIZE                   | USER_CANCEL_INITIALIZE                           |
| capture_flag                            | ACL_CAPTURE_FLAG                        | -                                                |
| cc1_polarity                            | ACL_CC1_LEVEL                           | USER_CL_CC1_POLARITY                             |
| cc2_polarity                            | ACL_CC2_LEVEL                           | USER_CL_CC2_POLARITY                             |
| cc3_polarity                            | ACL_CC3_LEVEL                           | USER_CL_CC3_POLARITY                             |
| cc4_polarity                            | ACL_CC4_LEVEL                           | USER_CL_CC4_POLARITY                             |
| cc_cycle                                | ACL_EXP_CYCLE                           | USER_SW_TRIGGER_CYCLE                            |
| cc_cycle_ex                             | ACL_EXP_CYCLE_EX                        | USER_SW_TRIGGER_CYCLE                            |
| cc_delay                                | ACL_CC_DELAY                            | USER_CC_DELAY                                    |
| cc_enable                               | ACL_EXP_EN                              | USER_SW_TRIGGER_ENABLE                           |
| cc_out_no                               | ACL_EXP_CC_OUT                          | USER_CL_CC_OUT_NO                                |
| cc_polarity                             | ACL_EXP_POL                             | USER_SW_TRIGGER_POLARITY                         |
| cc_stop                                 | ACL_CC_STOP                             | USER_CC_STOP                                     |
| ch                                      | -                                       | -                                                |
| channel_num                             | -                                       | -                                                |
| chatter_separate                        | ACL_EXT_CHATTER_SEPARATE                | USER_EXTERNAL_TRIGGER_CHATTER                    |
| count_cc                                | ACL_COUNT_CC                            | -                                                |
| count_exttrig                           | ACL_COUNT_EXTTRIG                       | -                                                |
| count_fval                              | ACL_COUNT_FVAL                          | -                                                |
| count_lval                              | ACL_COUNT_LVAL                          | -                                                |
| custom                                  | -                                       | -                                                |
| cxp_bdlink_timeout                      | ACL_CXP_BDLINK_TIMEOUT                  | USER_CXP_BDLINK_TIMEOUT                          |
| cxp_bitrate                             | ACL_CXP_BITRATE                         | USER_CXP_PHY_BITRATE                             |
| cxp_camlink_timeout                     | ACL_CXP_CAMLINK_TIMEOUT                 | USER_CXP_CAMLINK_TIMEOUT                         |
| cxp_connection_num                      | ACL_CXP_CONNECTION_NUM                  | USER_CXP_CONNECTION_NUM                          |
| cxp_link_speed                          | ACL_CXP_BITRATE<br />ACL_CXP_LINK_SPEED | USER_CXP_PHY_BITRATE<br />USER_CXP_PHY_LINKSPEED |
| cxp_phy_error_count                     | ACL_CXP_PHY_ERROR_COUNT                 | -                                                |
| data_mask_ex                            | ACL_DATA_MASK_EX                        | USER_DATA_MASK_EX                                |
| data_mask_lower                         | ACL_DATA_MASK_LOWER                     | USER_DATA_MASK_LOWER                             |
| data_mask_upper                         | ACL_DATA_MASK_UPPER                     | USER_DATA_MASK_UPPER                             |
| debug_print_enabled                     | -                                       | -                                                |
| device                                  | -                                       | -                                                |
| dval_enable                             | ACL_DVAL_EN                             | USER_DVAL_SIGNAL_ENABLE                          |
| encoder_abs_count                       | ACL_ENC_ABS_COUNT                       | -                                                |
| encoder_abs_mode                        | ACL_ENC_ABS_MODE                        | -                                                |
| encoder_abs_start                       | ACL_ENC_ABS_START                       | -                                                |
| encoder_agr_count                       | ACL_ENC_AGR_COUNT                       | -                                                |
| encoder_all_count                       | ACL_ENC_RLT_ALL_COUNT                   | -                                                |
| encoder_compare_reg_1                   | ACL_ENC_COMPARE_1                       | USER_ENCODER_COMPARE_REG_1                       |
| encoder_compare_reg_2                   | ACL_ENC_COMPARE_2                       | USER_ENCODER_COMPARE_REG_2                       |
| encoder_count                           | ACL_ENC_RLT_COUNT                       | -                                                |
| encoder_direction                       | ACL_ENC_DIRECTION                       | USER_ENCODER_PULSE                               |
| encoder_enable                          | ACL_ENC_EN                              | USER_ENCODER_ENABLE                              |
| encoder_mode                            | ACL_ENC_MODE                            | USER_ENCODER_MODE                                |
| encoder_phase                           | ACL_ENC_PHASE                           | USER_ENCODER_PHASE                               |
| encoder_rlt_all_count                   | ACL_ENC_RLT_ALL_COUNT                   | -                                                |
| encoder_rlt_count                       | ACL_ENC_RLT_COUNT                       | -                                                |
| encoder_start                           | ACL_ENC_START                           | USER_ENCODER_START                               |
| encoder_z_phase                         | ACL_ENC_ZPHASE_EN                       | USER_ENCODER_Z_PHASE                             |
| exposure                                | ACL_EXPOSURE                            | USER_SW_TRIGGER_WIDTH                            |
| exposure_ex                             | ACL_EXPOSURE_EX                         | USER_SW_TRIGGER_WIDTH                            |
| express_link                            | ACL_EXPRESS_LINK                        | -                                                |
| external_trigger_chatter                | ACL_EXT_CHATTER                         | USER_EXTERNAL_TRIGGER_CHATTER                    |
| external_trigger_chatter<br />_separate | ACL_EXT_CHATTER_SEPARATE                | USER_EXTERNAL_TRIGGER_CHATTER_SEPARATE           |
| external_trigger_delay                  | ACL_EXT_DELAY                           | USER_EXTERNAL_TRIGGER_DELAY                      |
| external_trigger_enable                 | ACL_EXT_EN                              | USER_EXTERNAL_TRIGGER_ENABLE                     |
| external_trigger_mode                   | ACL_EXT_MODE                            | USER_EXTERNAL_TRIGGER_POLARITY                   |
| external_trigger_polarity               | ACL_EXT_POL                             | USER_EXTERNAL_TRIGGER_EDGE                       |
| fan_prm                                 | ACL_FAN_RPM                             | -                                                |
| fifo_full                               | ACL_FIFO_FULL                           | -                                                |
| fpga_temp                               | ACL_FPGA_TEMP                           | -                                                |
| fpga_version                            | ACL_FPGA_VERSION                        | -                                                |
| frame_no                                | ACL_FRAME_NO                            | -                                                |
| freq_a                                  | ACL_FREQ_A                              | -                                                |
| freq_b                                  | ACL_FREQ_B                              | -                                                |
| freq_d                                  | ACL_FREQ_D                              | -                                                |
| freq_e                                  | ACL_FREQ_E                              | -                                                |
| freq_f                                  | ACL_FREQ_F                              | -                                                |
| freq_g                                  | ACL_FREQ_G                              | -                                                |
| freq_h                                  | ACL_FREQ_H                              | -                                                |
| freq_fval                               | ACL_FREQ_FVAL                           | -                                                |
| freq_lval                               | ACL_FREQ_LVAL                           | -                                                |
| freq_opt1                               | ACL_FREQ_OPT1                           | -                                                |
| freq_opt2                               | ACL_FREQ_OPT2                           | -                                                |
| freq_opt3                               | ACL_FREQ_OPT3                           | -                                                |
| freq_opt4                               | ACL_FREQ_OPT4                           | -                                                |
| freq_opt5                               | ACL_FREQ_OPT5                           | -                                                |
| freq_opt6                               | ACL_FREQ_OPT6                           | -                                                |
| freq_opt7                               | ACL_FREQ_OPT7                           | -                                                |
| freq_opt8                               | ACL_FREQ_OPT8                           | -                                                |
| freq_ttl1                               | ACL_FREQ_TTL1                           | -                                                |
| freq_ttl2                               | ACL_FREQ_TTL2                           | -                                                |
| freq_ttl3                               | ACL_FREQ_TTL3                           | -                                                |
| freq_ttl4                               | ACL_FREQ_TTL4                           | -                                                |
| freq_ttl5                               | ACL_FREQ_TTL5                           | -                                                |
| freq_ttl6                               | ACL_FREQ_TTL6                           | -                                                |
| freq_ttl7                               | ACL_FREQ_TTL7                           | -                                                |
| freq_ttl8                               | ACL_FREQ_TTL8                           | -                                                |
| freq_z                                  | ACL_FREQ_Z                              | -                                                |
| gpin_pin_sel                            | ACL_GPIN_PIN_SEL                        | USER_GPIN_SEL                                    |
| gpin_pol                                | ACL_GPIN_POL                            | -                                                |
| gpout_sel                               | ACL_GPOUT_POL                           | USER_GPOUT_POL                                   |
| gpout_pol                               | ACL_GPOUT_SEL                           | USER_GPOUT_SEL                                   |
| handle                                  | -                                       | -                                                |
| height                                  | ACL_Y_SIZE<br />ACL_Y_TOTAL             | USER_Y_SIZE<br />USER_Y_TOTAL_SIZE               |
| infrared_enable                         | ACL_INFRARED_ENABLE                     | USER_INFRARED_ENABLE                             |
| interrupt_line                          | ACL_INTR_LINE                           | USER_DATA_INTERRUT_LINE                          |
| interval_exttrig_1                      | ACL_INTERVAL_EXTTRIG_1                  | -                                                |
| interval_exttrig_2                      | ACL_INTERVAL_EXTTRIG_2                  | -                                                |
| interval_exttrig_3                      | ACL_INTERVAL_EXTTRIG_3                  | -                                                |
| interval_exttrig_4                      | ACL_INTERVAL_EXTTRIG_4                  | -                                                |
| is_grab                                 | -                                       | -                                                |
| is_opened                               | -                                       | -                                                |
| line_no                                 | ACL_LINE_NO                             | -                                                |
| line_reverse                            | ACL_LINE_REVERSE                        | USER_CAMERALINK_LINE_REVERSE                     |
| lval_delay                              | ACL_LVAL_DELAY                          | USER_CAMERALINK_LVAL_DELAY                       |
| lvds_cclk_sel                           | ACL_LVDS_CCLK_SEL                       | USER_LVDS_CCLK_SEL                               |
| lvds_phase_sel                          | ACL_LVDS_PHASE_SEL                      | USER_LVDS_PAHSE_SEL                              |
| lvds_synclt_sel                         | ACL_LVDS_SYNCLT_SEL                     | -                                                |
| mem_num                                 | ACL_MEM_NUM                             | USER_MEMORY_NUM                                  |
| narrow10bit_enable                      | ACL_NARROW10BIT_ENABLE                  | USER_NARROW10BIT_ENABLE                          |
| pix_shift                               | ACL_PIX_SHIFT                           | USER_PIXEL_DATA_SHIFT                            |
| pocl_lite_enable                        | ACL_POCL_LITE_ENABLE                    | USER_POCL_LITE_ENABLE                            |
| port_a_assign                           | ACL_PORT_A_ASSIGN                       | USER_PORT_A_ASSIGN                               |
| port_b_assign                           | ACL_PORT_B_ASSIGN                       | USER_PORT_B_ASSIGN                               |
| port_c_assign                           | ACL_PORT_C_ASSIGN                       | USER_PORT_C_ASSIGN                               |
| port_d_assign                           | ACL_PORT_D_ASSIGN                       | USER_PORT_D_ASSIGN                               |
| port_e_assign                           | ACL_PORT_E_ASSIGN                       | USER_PORT_E_ASSIGN                               |
| port_f_assign                           | ACL_PORT_F_ASSIGN                       | USER_PORT_F_ASSIGN                               |
| port_g_assign                           | ACL_PORT_G_ASSIGN                       | USER_PORT_G_ASSIGN                               |
| port_h_assign                           | ACL_PORT_H_ASSIGN                       | USER_PORT_H_ASSIGN                               |
| port_i_assign                           | ACL_PORT_I_ASSIGN                       | USER_PORT_I_ASSIGN                               |
| port_j_assign                           | ACL_PORT_J_ASSIGN                       | USER_PORT_J_ASSIGN                               |
| power_state                             | ACL_POWER_STATE                         | -                                                |
| power_supply                            | ACL_POWER_SUPPLY                        | -                                                |
| reverse_dma_enable                      | ACL_REVERSE_DMA                         | USER_REVERSE_DMA_ENABLE                          |
| rgb_swap_enable                         | ACL_RGB_SWAP_ENABLE                     | USER_RGB_SWAP_ENABLE                             |
| rolling_shutter                         | ACL_ROLLING_SHUTTER                     | USER_ROLLING_SHUTTER_TRIGGER_ENABLE              |
| scan_system                             | ACL_SCAN_SYSTEM                         | USER_INTERLACE_TYPE                              |
| serial_no                               | -                                       | -                                                |
| serial_read_wait_time                   | -                                       | -                                                |
| start_frame_no                          | ACL_START_FRAME_NO                      | -                                                |
| strobe_delay                            | ACL_STROBE_DELAY                        | USER_STROBE_DELAY_COUNT                          |
| strobe_enable                           | ACL_STROBE_EN                           | USER_STROBE_ENABLE                               |
| strobe_pol                              | ACL_STROBE_POL                          | USER_STROBE_POLALITY                             |
| strobe_time                             | ACL_STROBE_TIME                         | USER_STROBE_TIME_COUNT                           |
| sync_ch                                 | ACL_SYNC_CH                             | USER_SYNC_CH                                     |
| sync_lt                                 | ACL_SYNC_LT                             | USER_SYNC_LT                                     |
| tag                                     | -                                       | -                                                |
| tap_arrange                             | ACL_TAP_ARRANGE                         | USER_CAMERALINK_REARRANGEMENT_ENABLE             |
| tap_arrange_x_size                      | ACL_ARRANGE_XSIZE                       | USER_CAMERALINK_REARRANGEMENT_XSIZE              |
| tap_direction1                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_1                   |
| tap_direction2                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_2                   |
| tap_direction3                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_3                   |
| tap_direction4                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_4                   |
| tap_direction5                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_5                   |
| tap_direction6                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_6                   |
| tap_direction7                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_7                   |
| tap_direction8                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_8                   |
| tap_direction9                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_9                   |
| tap_direction10                         | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_10                  |
| tap_num                                 | ACL_TAP_NUM                             | USER_X_TAPS_PER_CH                               |
| timeout                                 | ACL_TIME_OUT                            | USER_TIMEOUT1                                    |
| vertical_remap                          | ACL_VERTICAL_REMAP                      | USER_VERTICAL_REMAP_ENABLE                       |
| virtual_comport                         | ACL_VIRTUAL_COMPORT                     | -                                                |
| width                                   | ACL_X_SIZE                              | USER_X_SIZE                                      |
| x_delay                                 | ACL_X_DELAY                             | USER_X_FRONT_PORCH                               |
| y_delay                                 | ACL_Y_DELAY                             | USER_Y_FRONT_PORCH                               |
| y_total                                 | ACL_Y_TOTAL                             | USER_Y_TOTAL_SIZE                                |



## Methods

| Methods                                                      | Descriptoin                                                  | AcapLib2 Function                      |
| ------------------------------------------------------------ | ------------------------------------------------------------ | -------------------------------------- |
| bgr2rgb(image)                                               | カラー画像のとき、BGRからRGBへ並びを入れ替えます。           |                                        |
| count_reset()                                                | すべてのカウンタをリセットします。                           |                                        |
| cxp_link_reset()                                             | CoaXPressカメラ、ボードに対してリンクリセットを行います。    |                                        |
| dispose()                                                    | クラス内部のリソースを解放します。                           |                                        |
| get_acapy_properties_text()                                  | AcaPyクラスのプロパティ一覧および設定値の書かれたテキストを取得します。 |                                        |
| get_bit_assign_ex()                                          | 入力画像並べ替え設定を取得します。                           | AcapGetBitAssignEx                     |
| get_boardInfo()                                              | PCに接続されているボード一覧の情報を取得します。(static method) |                                        |
| get_camera_category_feature_list(<br />    pCategoryName, nOption) | xml リストを取得します。                                     | AcapGetCameraCategoryFeatureList       |
| get_camera_feature_info(<br />    pFeatureName, nOption)     | Feature 情報を取得します。                                   | AcapGetCameraFeatureInfo               |
| get_camera_property_list(<br />    pCategoryName, nOption)   | プロパティ情報を取得します。                                 | AcapGetCameraPropertyList              |
| get_enable_board_ch_list()                                   | 接続可能なボード番号とCh番号のタプルのリストを取得します。(static method) |                                        |
| get_encoder()                                                | エンコーダの設定を取得します。                               | AcapGetEncoder                         |
| get_encoder_abs_multipoint(<br />    point_no)               | 指定したエンコーダ絶対カウントのポイント番号の絶対カウント値を取得します。 |                                        |
| get_external_trigger()                                       | 外部トリガの設定を取得します。                               | AcapGetExternalTrigger                 |
| get_frame_no()                                               | 現在の画像取得枚数(1,2,3・・・)を取得します。              | AcapGetFrameNo                         |
| get_gpout()                                                  | 汎用出力(GPOUT)のレベルを取得します。                        | AcapGetGPOut                           |
| get_image_data(index)                                        | リングバッファのIndex番号を指定して、画像データを取得します。 |                                        |
| get_info(value_id[, memnum])                                 | 設定IDを指定してボードの設定値を取得します。                 | AcapGetInfo                            |
| get_last_error([error_reset])                                | 最後に発生したエラー情報を取得します。                       | AcapGetLastErrorCode                   |
| get_last_error_ex(<br />    bErrReset)                       | 最後に発生したエラー情報を取得します。(拡張版)             | AcapGetLastErrorCodeEx                 |
| get_line_trigger()                                           | ライントリガの設定を取得します。                             | AcapGetLineTrigger                     |
| get_shutter_trigger()                                        | エリアセンサシャッタトリガの設定を取得します。               | AcapGetShutterTrigger                  |
| get_strobe()                                                 | ストロボの設定を取得します。                                 | AcapGetStrobe                          |
| grab_abort()                                                 | 画像入力を強制停止します。                                   | AcapGrabAbort                          |
| grab_start([input_num])                                      | 画像入力枚数を指定し、画像入力を開始します。                 | AcapGrabStart                          |
| grab_stop()                                                  | 画像入力を停止します。                                       | AcapGrabStop                           |
| load_inifile(filename)                                       | ボード設定ファイル(*.ini)を読込、ボードの設定を行います。    | AcapSelectFile                         |
| opt_link_reset()                                             | Opt-C:Linkボードに対してリンクリセットを行います。           |                                        |
| print_last_error()                                           | 最後に発生したエラー情報をコマンドプロンプトへ表示します。   |                                        |
| read([copy, wait_frame])                                     | grab_start()後、現在のフレーム画像を取得します。             |                                        |
| read_frames([copy])                                          | 前回取得したフレームの次から、現在のフレームまでの画像を取得します。 |                                        |
| reflect_param(<br />    [force_execution])                   | プロパティで設定した値をボードへ反映させます。               | AcapReflectParam                       |
| regist_device_alm_callback(<br />device_alm_func)            | DeviceAlarmのコールバックで呼び出される関数を登録します。    |                                        |
| regist_frame_end_callback(<br />frame_end_func)              | FrameEndのコールバックで呼び出される関数を登録します。       |                                        |
| regist_grab_end_callback(<br />    grab_end_func)            | GrabEndのコールバックで呼び出される関数を登録します。        |                                        |
| regist_gpin_callback(<br />    gpin_func)                    | GPINのコールバックで呼び出される関数を登録します。           |                                        |
| regist_overwrite_callback(<br />    overwrite_func)          | Overwriteのコールバックで呼び出される関数を登録します。      |                                        |
| regist_timeout_callback(<br />    timeout_func)              | Timeoutのコールバックで呼び出される関数を登録します。        |                                        |
| save_inifile(inifilename)                                    | ボードに設定されている値をiniファイルに保存します。          | AcapSelectFile                         |
| serial_close()                                               | シリアル通信ポートを閉じます。                               | AcapSerialClose                        |
| serial_get_parameter()                                       | シリアル通信のパラメータを取得します。                       | AcapSerialGetParameter                 |
| serial_open(<br />    [baud_rate, data_bit, parity, <br />    stop_bit, flow]) | シリアルポートをオープンし、シリアル通信のパラメータを設定します。 | AcapSerialOpen  AcapSerialSetParameter |
| serial_read(<br />    [asc, <br />    time_out, <br />    buffer_size, <br />    end_str]) | シリアル通信コマンドを受信します。<br />受信バッファが空になるまで受信します。 | AcapSerialRead                         |
| serial_write(<br />    write_command<br />    [, asc, start_str, end_str]) | シリアル通信コマンドを送信します。                           | AcapSerialWrite                        |
| set_bit_assign_ex(<br />    bit_assign_info)                 | 入力画像並べ替え設定を行います。                             | AcapSetBitAssignEx                     |
| set_encoder(<br />    enc_enable, <br />    enc_mode, <br />    enc_start, <br />    enc_phase, <br />    enc_direction, <br />    z_phase_enable, <br />    compare1, <br />    compare2) | エンコーダを設定します。                                     | AcapSetEncoder                         |
| set_encoder_abs_multipoint(<br />    point_no, abs_count)    | エンコーダ絶対カウントのポイント番号を指定して、絶対カウント値を設定します。 |                                        |
| set_external_trigger( <br />    exp_trg_en, <br />    ext_trg_mode, <br />    ext_trg_dly, <br />    ext_trg_chatter, <br />    timeout) | 外部トリガを設定します。                                     | AcapSetExternalTrigger                 |
| set_gpout(output_level)                                      | 汎用出力(GPOUT)のレベルを設定します。                        | AcapSetGPOut                           |
| set_info(<br />    value_id, value[, memnum])                | ボードへ設定IDを指定して値を設定します。<br />プロパティに設定値がある場合は設定しないでください。 | AcapSetInfo                            |
| set_line_trigger(<br />    exp_cycle, <br />    exposure, <br />    exp_pol) | ライントリガを設定します。                                   | AcapSetLineTrigger                     |
| set_power_supply(<br />    wait_time, value)                 | カメラクロック確認待機時間(waite_time)をmsecで指定し、給電のON(1)/OFF(0)をvalueに設定します。 |                                        |
| set_shutter_trigger(<br />    exp_cycle, <br />    exposure, <br />    exp_pol, <br />    exp_unitt, <br />    cc_sel) | エリアセンサシャッタトリガを設定します。                     | AcapSetShutterTrigger                  |
| set_strobe(<br />    strobe_en, <br />    strobe_delay, <br />    strobe_time) | ストロボを設定します。                                       | AcapSetStrobe                          |
| snap([copy])                                                 | 1フレームの取込を行います。                                 |                                        |
| wait_grab_start([timeout])                                   | 画像入力開始を待ちます。                                     |                                        |
| wait_frame_end([timeout])                                    | 現在のフレームの入力完了を待ちます。                         |                                        |
| wait_gpin([timeout])                                         | GPIN割込みを待ちます。                                       |                                        |
| wait_grab_end([timeout])                                     | Grab(連続入力)の完了を待ちます。                             |                                        |



------

### bgr2rgbスタティックメソッド

カラー画像のとき、カラーデータのRGBの並びをB,G,RからR,G,Bへ入れ替えます。
モノクロ画像のときは、そのままの画像が返されます。

```python
def bgr2rgb(bgr_image : np.ndarray) -> np.ndarray:
```

***パラメータ***

| 名前      | 型         | 説明                                                  |
| --------- | ---------- | ----------------------------------------------------- |
| bgr_image | np.ndarray | numpyのndarray形式のB,G,R順のカラー画像を指定します。 |

***戻り値***

rgb_image

| 名前      | 型         | 説明                                                  |
| --------- | ---------- | ----------------------------------------------------- |
| rgb_image | np.ndarray | numpyのndarray形式のR,G,B順のカラー画像を取得します。 |



------

### count_resetメソッド

FVAL/LVAL/外部トリガ/CC カウント回数及び、外部トリガ間隔カウンタ1~4 のカウンタをリセットしま
す。

```python
def count_reset(self) -> bool:
```

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### cxp_link_resetメソッド

対象のポートに接続されているカメラに対し、カメラ接続確立(再初期化)を行います。
※カメラ設定はデフォルトに戻りますので、LinkSpeed 等カメラ設定を再度実施する必要があります。

```python
def cxp_link_reset(self) -> int:
```

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### disposeメソッド

AcaPyクラス内部のリソースを解放します。

dispose()メソッドを実施後、インスタンスしたクラスオブジェクトは使用できません。

```python
def dispose(self):
```



------

### get_acapy_properties_textメソッド

AcaPyクラスのプロパティ一覧および設定値の書かれたテキストを取得します。

```python
def get_acapy_properties_text(self) -> str:
```

***戻り値***

ret

| 名前 | 型   | 説明                                                      |
| ---- | ---- | --------------------------------------------------------- |
| ret  | str  | AcaPyクラスのプロパティ一覧および設定値の書かれたテキスト |



------

### get_bit_assign_exメソッド

入力画像並べ替え設定を取得します。

AcapLib2のAcapGetBitAssignEx()関数相当

```python
def get_bit_assign_ex(self) -> Tuple[int, acaplib2.BITASSIGNINFO]:
```

***戻り値***

(ret, bit_assign_info)

| 名前            | 型            | 説明                                   |
| --------------- | ------------- | -------------------------------------- |
| ret             | int           | 成功時: 1<br />失敗時: 0               |
| bit_assign_info | BITASSIGNINFO | 入力画像並べ替え情報が格納された構造体 |



------

### get_boardInfoスタティックメソッド

接続されているボード情報をACAPBOARDINFOEX構造体で取得します。

AcapLib2のAcapGetBoardInfoEx()関数相当

```python
def get_boardInfo() -> Tuple[int, acaplib2.ACAPBOARDINFOEX]:
```

***戻り値***

(ret, board_info)

| 名前       | 型              | 説明                                   |
| ---------- | --------------- | -------------------------------------- |
| ret        | int             | 成功時: 1<br />失敗時: 0               |
| board_info | ACAPBOARDINFOEX | 接続されたボード情報が格納された構造体 |



------

### get_camera_category_feature_listメソッド

xmlリストをACL_CAM_FEATURE_INFO構造体で取得します。

AcapGetCameraCategoryFeatureList()関数相当

```python
def get_camera_category_feature_list(self, pCategoryName : str, nOption : int) -> Tuple[int, acaplib2.ACL_CAM_FEATURE_INFO]:
```

***パラメータ***

| 名前          | 型   | 説明                                                         |
| ------------- | ---- | ------------------------------------------------------------ |
| pCategoryName | str  | 取得する Category/Feature を指定します。                     |
| nOption       | int  | 取得レベルを指定します。<br />0: Beginner  <br />1: Expert <br />2: Guru <br />3: 全 FeatureList を取得します。(Invisible を含む) |

***戻り値***

(ret, pList)

| 名前  | 型                   | 説明                             |
| ----- | -------------------- | -------------------------------- |
| ret   | int                  | 成功時: 1<br />失敗時: 0         |
| pList | ACL_CAM_FEATURE_INFO | カメラ設定情報が格納された構造体 |



------

### get_camera_feature_infoメソッド

カメラのFeature 情報をACL_CAM_FEATURE_INFO構造体で取得します。

AcapLib2のAcapGetCameraFeatureInfo()関数相当

```python
def get_camera_feature_info(self, pFeatureName : str, nOption : int) -> Tuple[int, acaplib2.ACL_CAM_FEATURE_INFO]:
```

***パラメータ***

| 名前         | 型   | 説明                                                         |
| ------------ | ---- | ------------------------------------------------------------ |
| pFeatureName | str  | 取得する Feature名の文字列を指定します。                     |
| nOption      | int  | 取得レベルを指定します。<br />0: Beginner  <br />1: Expert <br />2: Guru <br />3: 全 FeatureList を取得します。(Invisible を含む) |

***戻り値***

(ret, pFeatureInfo)

| 名前         | 型                   | 説明                                   |
| ------------ | -------------------- | -------------------------------------- |
| ret          | int                  | 成功時: 1<br />失敗時: 0               |
| pFeatureInfo | ACL_CAM_FEATURE_INFO | カメラのFeature 情報が格納された構造体 |



------

### get_camera_property_listメソッド

カメラのプロパティ情報をACL_CAM_PROPERTY_LIST構造体で取得します。

AcapLib2のAcapGetCameraPropertyList()関数相当

```python
def get_camera_property_list(self, pCategoryName : str, nOption : int) -> Tuple[int, acaplib2.ACL_CAM_PROPERTY_LIST]:
```

***パラメータ***

| 名前          | 型   | 説明                                              |
| ------------- | ---- | ------------------------------------------------- |
| pCategoryName | str  | 取得する Category/Feature名の文字列を指定します。 |
| nOption       | int  | 予約(reserved)                                    |

 ***戻り値***

(ret, pPropList)

| 名前      | 型                    | 説明                                   |
| --------- | --------------------- | -------------------------------------- |
| ret       | int                   | 成功時: 1<br />失敗時: 0               |
| pPropList | ACL_CAM_PROPERTY_LIST | カメラプロパティ情報が格納された構造体 |



------

### get_enable_board_ch_listスタティックメソッド

AcaPyクラスのインスタンスの引数に渡す事が可能なボード番号とCh番号、ボード名、ボードのシリアル番号のタプルのリストを取得します。

```python
def get_enable_board_ch_list() -> List[Tuple[int, int, str, int]]:
```

 ***戻り値***

[(board_id, ch, board_name, serial_no)]

| 名前       | 型   | 説明                   |
| ---------- | ---- | ---------------------- |
| board_id   | int  | ボード番号(ボードID) |
| ch         | int  | チャンネル番号         |
| board_name | str  | ボード名               |
| serial_no  | int  | ボードのシリアル番号   |



------

### get_encoderメソッド

エンコーダ設定値を取得します。

AcapLib2のAcapGetEncoder()関数相当

```python
def get_encoder(self) -> Tuple[int, int, int, int, int, int, int, int, int, int]:
```

***戻り値***

(ret, enc_enable, enc_mode, enc_start, enc_phase, enc_direction, z_phase_enable, compare1, compare2, comp2_count)

| 名前           | 型   | 説明                                                         |
| -------------- | ---- | ------------------------------------------------------------ |
| ret            | int  | 成功時: 1<br />失敗時: 0                                     |
| enc_enable     | int  | エンコーダ使用設定                                           |
| enc_mode       | int  | エンコーダモード                                             |
| enc_start      | int  | エンコーダ起動方法                                           |
| enc_phase      | int  | エンコーダパルス                                             |
| enc_direction  | int  | エンコーダ回転方向                                           |
| z_phase_enable | int  | Z 相使用設定                                                 |
| compare1       | int  | 比較レジスタ1(遅延パルス設定)                                |
| compare2       | int  | 比較レジスタ2(間隔パルス設定)                                |
| comp2_count    | int  | エンコーダカウント値<br />相対カウント、有効時:総カウント数<br />絶対カウント、有効時:絶対カウント値 |



------

### get_encoder_abs_multipointメソッド

絶対カウント・マルチポイント値を取得します。

```python
def get_encoder_abs_multipoint(self, point_no : int) -> Tuple[int, int]:
```

***パラメータ***

| 名前     | 型   | 説明                                               |
| -------- | ---- | -------------------------------------------------- |
| point_no | int  | 設定するマルチポイントの番号を指定します。(0~255) |

***戻り値***

(ret, abs_count)

| 名前      | 型   | 説明                           |
| --------- | ---- | ------------------------------ |
| ret       | int  | 成功時: 1<br />失敗時: 0       |
| abs_count | int  | 絶対カウント・マルチポイント値 |



------

### get_external_triggerメソッド

外部トリガの設定を取得します。

AcapLib2のAcapGetExternalTrigger()関数相当

```python
def get_external_trigger(self) -> Tuple[int, int, int, int, int, int]:
```

***戻り値***

(ret, exp_trg_en, ext_trg_mode, ext_trg_dly, ext_trg_chatter, timeout)

| 名前            | 型   | 説明                               |
| --------------- | ---- | ---------------------------------- |
| ret             | int  | 成功時: 1<br />失敗時: 0           |
| exp_trg_en      | int  | 外部トリガ 使用設定                |
| ext_trg_mode    | int  | 外部トリガモード                   |
| ext_trg_dly     | int  | 外部トリガ 検出遅延時間 (1us 単位) |
| ext_trg_chatter | int  | 外部トリガ 検出無効時間 (1us 単位) |
| timeout         | int  | 検出待機時間 (1ms 単位)            |



------

### get_frame_noメソッド

入力フレームの情報を取得します。

AcapLib2のAcapGetFrameNo()関数相当

```python
def get_frame_no(self) -> Tuple[int, int, int , int]:
```

***戻り値***

(ret, frame_no, line, index)

| 名前     | 型   | 説明                                                     |
| -------- | ---- | -------------------------------------------------------- |
| ret      | int  | 成功時: 1<br />失敗時: 0                                 |
| frame_no | int  | 入力が完了したフレーム数を取得します。                   |
| line     | int  | フレーム内の入力が完了したライン数を取得します。         |
| index    | int  | 最後に入力が完了したメモリ番号(1,2,3...)を取得します。 |



------

### get_gpoutメソッド

GPOUTの状態を取得します。

AcapLib2のAcapGetGPOut()関数相当

```python
def get_gpout(self) -> Tuple[int, int]:
```

***戻り値***

(ret, dwOutputLevel)

| 名前          | 型   | 説明                                                         |
| ------------- | ---- | ------------------------------------------------------------ |
| ret           | int  | 成功時: 1<br />失敗時: 0                                     |
| dwOutputLevel | int  | GPOUT 出力設定状態を対応するBit で格納します。<br/>0:OFF/1:ON<br/>Bit0:GPOUT[1]ピン (GP_OUT1)<br/>Bit1:GPOUT[2]ピン (GP_OUT2)<br/>:<br/>Bit7:GPOUT[8]ピン |



------

### get_image_dataメソッド

リングバッファのIndex番号(0, 1, 2...)を指定し、画像データを取得します。

```python
def get_image_data(self, index : int) -> Union[np.ndarray, None]:
```

***パラメータ***

| 名前  | 型   | 説明                                                  |
| ----- | ---- | ----------------------------------------------------- |
| index | int  | リングバッファのIndex番号(0, 1, 2...)を指定しリます。 |

***戻り値***

image

| 名前  | 型         | 説明                                     |
| ----- | ---------- | ---------------------------------------- |
| image | np.ndarray | 画像データはnumpyのndarrayで取得します。 |



------

### get_infoメソッド

設定IDを指定して、設定値を取得します。

AcapLib2のAcapGetInfo()関数相当

```python
def get_info(self, value_id : int, mem_num : int = 0) -> Tuple[int, int]:
```

***パラメータ***

| 名前     | 型   | 説明                                                         |
| -------- | ---- | ------------------------------------------------------------ |
| value_id | int  | 設定ID                                                       |
| mem_num  | int  | value_idの値により使用方法が異なります。<br />詳細はAcapLib2マニュアルのAcapGetInfo関数を参照ください。 |

***戻り値***

(ret, value)

| 名前  | 型   | 説明                     |
| ----- | ---- | ------------------------ |
| ret   | int  | 成功時: 1<br />失敗時: 0 |
| value | int  | 取得した設定値           |



------

### get_last_errorメソッド

最後に発生したエラー情報を取得します。

AcapLib2のAcapGetLastErrorCode()関数相当

```python
def get_last_error(self, error_reset : bool = False) -> acaplib2.ACAPERRORINFO:
```

***パラメータ***

| 名前        | 型   | 説明                                                         |
| ----------- | ---- | ------------------------------------------------------------ |
| error_reset | bool | True: エラー情報をリセット<br />False: エラー情報をリセットしない |

***戻り値***

error_info

| 名前       | 型                     | 説明                                            |
| ---------- | ---------------------- | ----------------------------------------------- |
| error_info | acaplib2.ACAPERRORINFO | エラーの内容をACAPERRORINFO構造体で取得します。 |



------

### get_last_error_exメソッド

最後に発生したエラー情報を取得します。

AcapLib2のAcapGetLastErrorCodeEx()関数相当

```python
def get_last_error_ex(self, bErrReset : bool) -> acaplib2.ACAPERRORINFOEX:
```

***パラメータ***

| 名前      | 型   | 説明                                                         |
| --------- | ---- | ------------------------------------------------------------ |
| bErrReset | bool | True: エラー情報をリセットする<br />False: エラー情報をリセットしない |

***戻り値***

error_info_ex

| 名前          | 型              | 説明                                              |
| ------------- | --------------- | ------------------------------------------------- |
| error_info_ex | ACAPERRORINFOEX | エラーの内容をACAPERRORINFOEX構造体で取得します。 |



------

### get_line_triggerメソッド

ライントリガの設定を取得します。

AcapLib2のAcapGetLineTrigger()関数相当

```python
def get_line_trigger(self) -> Tuple[int, int, int, int]:
```

***戻り値***

(ret, exp_cycle, exposure, exp_pol)

| 名前      | 型   | 説明                                                   |
| --------- | ---- | ------------------------------------------------------ |
| ret       | int  | 成功時: 1<br />失敗時: 0                               |
| exp_cycle | int  | 露光周期を1μsec単位で取得します。                      |
| exposure  | int  | 露光時間を1μsec単位で取得します。                      |
| exp_pol   | int  | 出力論理を取得します。<br />1: 正論理<br />0: 負論理 |



------

### get_shutter_triggerメソッド

シャッタトリガの設定を取得します。

AcapLib2のAcapGetShutterTrigger()関数相当

```python
def get_shutter_trigger(self) -> Tuple[int, int, int, int, int, int]:
```

***戻り値***

(ret, exp_cycle, exposure, exp_pol, exp_unit, cc_sel)

| 名前      | 型   | 説明                                    |
| --------- | ---- | --------------------------------------- |
| ret       | int  | 成功時: 1<br />失敗時: 0                |
| exp_cycle | int  | CC周期を1μsec単位で取得します。         |
| exposure  | int  | CC出力幅を1μsec単位で取得します。       |
| exp_pol   | int  | 出力論理を取得します。                  |
| exp_unit  | int  | 未サポート                              |
| cc_sel    | int  | 露光信号を出力するCC 番号を取得します。 |



------

### get_strobeメソッド

ストロボの設定を取得します。

AcapLib2のAcapGetStrobe()関数相当

```python
def get_strobe(self) -> Tuple[int, int, int, int]:
```

***戻り値***

(ret, strobe_en, strobe_delay, strobe_time)

| 名前         | 型   | 説明                                                         |
| ------------ | ---- | ------------------------------------------------------------ |
| ret          | int  | 成功時: 1<br />失敗時: 0                                     |
| strobe_en    | int  | ストロボの有効(1)/無効(0)状態を取得します。                 |
| strobe_delay | int  | ストロボパルスが出力されるまでの遅延時間(1μsec単位)を取得します。 |
| strobe_time  | int  | ストロボを出力する時間(1μsec単位)を取得します。              |



------

### grab_abortメソッド

撮影中の画像(フレーム)取込の完了を待たずに画像入力を停止します。

AcapLib2のAcapGrabAbort()関数相当

```python
def grab_abort(self) -> int:
```

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### grab_startメソッド

画像入力を開始します。

grab_start()メソッドを実行したら、必ずgrab_stop()メソッド、もしくはgrab_abort()メソッドで画像入力を停止させてください。

AcapLib2のAcapGrabStart()関数相当

```python
def grab_start(self, input_num : int = 0) -> int:
```

***パラメータ***

| 名前      | 型   | 説明                                       |
| --------- | ---- | ------------------------------------------ |
| input_num | int  | 0: 連続入力<br />1~0xFFFFFFFF: 指定枚入力 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### grab_stopメソッド

撮影中の画像(フレーム)取込の完了を待ってから画像入力を停止します。

grab_start()メソッドで取込枚数(input_num)を指定したときは、枚数分の取込完了を待ちます。

AcapLib2のAcapGrabStop()関数相当

```python
def grab_stop(self) -> int:
```

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### load_inifileメソッド

ボード設定ファイル(iniファイル)を読込ます。

AcapLib2のAcapSelectFile()関数相当

```python
def load_inifile(self, inifilename : str) -> int:
```

  ***パラメータ***

| 名前        | 型   | 説明                                                         |
| ----------- | ---- | ------------------------------------------------------------ |
| inifilename | str  | iniファイルのファイル名を指定します。<br />iniファイルはAcapLib2のiniファイルと同じファイルを用います。 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### opt_link_resetメソッド

Opt-C:Link ボードに対してリンクリセット(再初期化)を行います。

```python
def opt_link_reset(self) -> bool:
```

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### print_last_errorメソッド

最後に発生したエラー情報をコマンドラインに表示します。

```python
def print_last_error(self) -> acaplib2.ACAPERRORINFOEX:
```

***戻り値***

error_info

| 名前       | 型                       | 説明                                              |
| ---------- | ------------------------ | ------------------------------------------------- |
| error_info | acaplib2.ACAPERRORINFOEX | エラーの内容をACAPERRORINFOEX構造体で取得します。 |



------

### readメソッド

grab_startメソッドを実行後、grab_startメソッドを実行するまでの間で実行し、現在の画像データを1フレーム分取得します。

```python
def read(self, copy : bool = False, wait_frame : bool = True) -> Tuple[int, Union[np.ndarray, None], int, int]:
```

***パラメータ***

| 名前       | 型   | 説明                                                         |
| ---------- | ---- | ------------------------------------------------------------ |
| copy       | bool | True: リングバッファから画像データをコピーして取得します。<br />False:リングバッファの画像データを取得します。この場合、画像データが上書きされる場合があります。 |
| wait_frame | bool | True: 1フレーム分の画像データ取得完了を待ってから画像データを取得します。<br />False:1フレーム分の画像データ取得完了を待たずに画像データを取得します。 |

***戻り値***

(ret, frame, frame_no, line)

| 名前     | 型         | 説明                                                         |
| -------- | ---------- | ------------------------------------------------------------ |
| ret      | int        | 成功時: 1<br />失敗時: 0                                     |
| frame    | np.ndarray | 取得した画像データ<br />カラー画像の場合、データの並びはB, G, Rとなります。(OpenCVと同等) |
| frame_no | int        | grab_startから入力が完了したフレーム数(1, 2, 3...)         |
| line     | int        | 入力が完了したライン数                                       |



------

### read_framesメソッド

grab_startメソッドを実行後、grab_stopメソッドを実行するまでの間で実行し、前回取得したフレームの次のフレームから現在取得したフレームまでの画像データをリストで取得します。

カメラのフレームレートが速い場合、取得したフレーム画像が上書きされる場合があります。
その場合、mem_numプロパティの値(リングバッファの画像面数)を大きくしてください。

```python
def read_frames(self, copy : bool = False, wait_frame : bool = True) -> Tuple[int, Union[List[np.ndarray], None], int, int]:
```

***パラメータ***

| 名前       | 型   | 説明                                                         |
| ---------- | ---- | ------------------------------------------------------------ |
| copy       | bool | True: リングバッファから画像データをコピーして取得します。<br />False:リングバッファの画像データを取得します。 |
| wait_frame | bool | True: 現在のフレームの画像データ取得完了を待ってから画像データを取得します。<br />False:現在のフレームの画像データ取得完了を待たずに画像データを取得します。 |

***戻り値***

(ret, frames, count, frame_no)

| 名前     | 型         | 説明                                                         |
| -------- | ---------- | ------------------------------------------------------------ |
| ret      | int        | 成功時: 1<br />失敗時: 0<br />データ上書き時: リングバッファが上書きされた画像枚数を負にした値 |
| frames   | np.ndarray | 前回取得したフレームの次のフレームから現在取得したフレームまでの画像データをリストで取得します。<br />カラー画像の場合、データの並びはB, G, Rとなります。(OpenCVと同等) |
| count    | int        | 前回取得したフレームの次のフレームから現在取得したフレームまでのフレーム数 |
| frame_no | int        | grab_startから入力が完了した総フレーム数(1, 2, 3...)       |



------

### reflect_paramメソッド

プロパティで設定した値を画像入力ボードに反映します。

AcapLib2のAcapReflectParam()関数相当

```python
def reflect_param(self, force_execution : bool = False) -> int:
```

***パラメータ***

| 名前            | 型   | 説明                                                         |
| --------------- | ---- | ------------------------------------------------------------ |
| force_execution | bool | True: 設定の反映が不要な場合でも設定の反映を行います。<br />False:設定の反映が必要な場合に設定の反映を行います。 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### regist_device_alm_callbackメソッド

 デバイスアラーム割り込み(ACL_INT_DEVICE_ALM)イベントのコールバック関数を登録します。

登録した関数はサブスレッドで呼び出されます。

device_alm_funcに **None** を指定すると、コールバック関数の登録は解除されます。

```python
def regist_device_alm_callback(self, device_alm_func):
```

***パラメータ***

| 名前            | 型       | 説明                                                       |
| --------------- | -------- | ---------------------------------------------------------- |
| device_alm_func | Function | ACL_INT_DEVICE_ALMイベントで呼び出される関数を指定します。 |

***サンプル***

```python
import acapy    # AcaPy

def capture_device_alm(capture, alarm_status):
    '''ACL_INT_DEVICE_ALMのコールバック関数

    Parameters
    ----------
    capture : AcaPy class
        コールバック元のAcaPyクラスオブジェクト
    alarm_status : int
        アラームの内容  
        BIT3 サーマルシャットダウンアラーム
        BIT2 FAN 回転数アラーム
        BIT1 FPGA 温度アラーム
        BIT0 基板周辺温度アラーム
    '''
    # DeviceAlarmがあったときに発生
    print(f"[device_alm callback] board_id={capture.board_id}, ch={capture.ch}, alarm_status={alarm_status}")

# AcaPyクラスのインスタンス
cap = acapy.AcaPy()
# DeviceAlarmのコールバック関数を登録
cap.regist_device_alm_callback(capture_device_alm)
```



------

### regist_frame_end_callbackメソッド

1フレーム入力完了割り込み(ACL_INT_FRAMEEND)イベントのコールバック関数を登録します。

登録した関数はサブスレッドで呼び出されます。

frame_end_funcに **None** を指定すると、コールバック関数の登録は解除されます。

```python
def regist_frame_end_callback(self, frame_end_func, frame_copy_flag: bool=False):
```

***パラメータ***

| 名前            | 型       | 説明                                                         |
| --------------- | -------- | ------------------------------------------------------------ |
| frame_end_func  | Function | ACL_INT_FRAMEENDイベントで呼び出される関数を指定します。     |
| frame_copy_flag | bool     | True: リングバッファから画像データをコピーして取得します。<br />False:リングバッファの画像データを取得します。(初期値) |

***サンプル***

```python
import acapy    # AcaPy

def capture_frame_end(capture, frames, count, total_frame_count, error_info):
    '''ACL_INT_FRAMEENDのコールバック関数

    Parameters
    ----------
    capture : AcaPy class
        コールバック元のAcaPyクラスオブジェクト
    frames : List[ndarray]
        前回の次のフレームから今回のフレームまでの画像データのリスト
    count : int
        リストに格納されたフレームの枚数
    total_frame_count : int
        今回まで取得した全フレーム枚数
    error_info : int
        エラー情報。1のときエラーなし、負のとき上書きされたフレーム枚数
    '''
    # 各フレーム画像の取込が完了したときに発生
    # error_infoの値が負のときは、フレーム画像の上書きが発生しています。
    #  -> AcaPyクラスのリングバッファの面数(mem_numプロパティの値)を多くしてください。
    print(f"[frame_end callback] board_id={capture.board_id}, ch={capture.ch}, FrameNo={total_frame_count}, count={count}, error_info={error_info}")

# AcaPyクラスのインスタンス
cap = acapy.AcaPy()
# FrameEndのコールバック関数を登録
cap.regist_frame_end_callback(capture_frame_end)
```



------

### regist_grab_end_callbackメソッド

入力終了割り込み(ACL_INT_GRABEND)イベントのコールバック関数を登録します。

登録した関数はサブスレッドで呼び出されます。

grab_end_funcに **None** を指定すると、コールバック関数の登録は解除されます。

```python
def regist_grab_end_callback(self, grab_end_func):
```

***パラメータ***

| 名前          | 型       | 説明                                                    |
| ------------- | -------- | ------------------------------------------------------- |
| grab_end_func | Function | ACL_INT_GRABENDイベントで呼び出される関数を指定します。 |

***サンプル***

```python
import acapy    # AcaPy

def capture_grab_end(capture):
    '''ACL_INT_GRABENDのコールバック関数

    Parameters
    ----------
    capture : AcaPy class
        コールバック元のAcaPyクラスオブジェクト
    '''
    # grab_start()メソッドで枚数指定分の画像取込が完了したときに発生
    print(f"[grab_end callback] board_id={capture.board_id}, ch={capture.ch}")

# AcaPyクラスのインスタンス
cap = acapy.AcaPy()
# GrabEndのコールバック関数を登録
cap.regist_grab_end_callback(capture_grab_end)
```



------

### regist_gpin_callbackメソッド

GPIN 割り込み (ACL_INT_GPIN)イベントのコールバック関数を登録します。

登録した関数はサブスレッドで呼び出されます。

gpin_funcに **None** を指定すると、コールバック関数の登録は解除されます。

```python
def regist_gpin_callback(self, gpin_func):
```

***パラメータ***

| 名前      | 型       | 説明                                                 |
| --------- | -------- | ---------------------------------------------------- |
| gpin_func | Function | ACL_INT_GPINイベントで呼び出される関数を指定します。 |

***サンプル***

```python
import acapy    # AcaPy

def capture_gpin(capture, gpin_polarity):
    '''ACL_INT_GPINのコールバック関数

    Parameters
    ----------
    capture : AcaPy class
        コールバック元のAcaPyクラスオブジェクト
    gpin_polarity : int
        GPINのレベル
    '''
    # GPINの入力があったときに発生
    print(f"[gpin callback] board_id={capture.board_id}, ch={capture.ch}, gpin_polarity={gpin_polarity}")

# AcaPyクラスのインスタンス
cap = acapy.AcaPy()
# GPINのコールバック関数を登録
cap.regist_gpin_callback(capture_gpin)
```



------

### regist_overwrite_callbackメソッド

バッファオーバーフロー(リングバッファのメモリが1周以上したことによる画像データの上書き)イベントのコールバック関数を登録します。

登録した関数はサブスレッドで呼び出されます。

overwrite_funcに **None** を指定すると、コールバック関数の登録は解除されます。

```python
def regist_overwrite_callback(self, overwrite_func):
```

***パラメータ***

| 名前           | 型       | 説明                                                   |
| -------------- | -------- | ------------------------------------------------------ |
| overwrite_func | Function | オーバーライトイベントで呼び出される関数を指定します。 |

***サンプル***

```python
import acapy    # AcaPy

def capture_overwrite(capture, count, total_frame_count, overwrite_count):
    '''オーバーライトのコールバック関数

    Parameters
    ----------
    capture : AcaPy class
        コールバック元のAcaPyクラスオブジェクト
    count : int
        前回から今回まで取得した画像の枚数
    total_frame_count : int
        取込開始から取得した画像の総枚数
    overwrite_count : int
        上書きされた画像の枚数
    '''
    # Overwrite(画像データの上書き)が発生したときに発生
    print(f"[overwrite callback] board_id={capture.board_id}, ch={capture.ch}")

# AcaPyクラスのインスタンス
cap = acapy.AcaPy()
# Overwrite(画像データの上書き発生)のコールバック関数を登録
cap.regist_overwrite_callback(capture_overwrite)
```



------

### regist_timeout_callbackメソッド

 タイムアウト(ACL_INT_TIMEOUT)イベントのコールバック関数を登録します。

登録した関数はサブスレッドで呼び出されます。

timeout_funcに **None** を指定すると、コールバック関数の登録は解除されます。

```python
def regist_timeout_callback(self, timeout_func):
```

***パラメータ***

| 名前         | 型       | 説明                                                    |
| ------------ | -------- | ------------------------------------------------------- |
| timeout_func | Function | ACL_INT_TIMEOUTイベントで呼び出される関数を指定します。 |

***サンプル***

```python
import acapy    # AcaPy

def capture_timeout(capture):
    '''ACL_INT_TIMEOUTのコールバック関数

    Parameters
    ----------
    capture : AcaPy class
        コールバック元のAcaPyクラスオブジェクト
    '''
    # Timeoutがあったときに発生
    print(f"[timeout callback] board_id={capture.board_id}, ch={capture.ch}")

# AcaPyクラスのインスタンス
cap = acapy.AcaPy()
# Timeoutのコールバック関数を登録
cap.regist_timeout_callback(capture_timeout)
```



------

### save_inifileメソッド

ボードに設定されている値をiniファイルに保存します。

AcapLib2のAcapSelectFile()関数相当

```python
def save_inifile(self, inifilename : str) -> int:
```

***パラメータ***

| 名前        | 型   | 説明                              |
| ----------- | ---- | --------------------------------- |
| inifilename | str  | 保存するiniファイルのファイルパス |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### serial_closeメソッド

シリアル通信のポートをクローズします。

AcapLib2のAcapSerialClose()関数相当

```python
def serial_close(self) -> int:
```

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### serial_get_parameterメソッド

シリアル通信の設定を取得します。
serial_open()メソッドにてシリアルポートをオープン後に行ってください。

AcapLib2のAcapSerialGetParameter()関数相当

```python
def serial_get_parameter(self) -> Tuple[int, int, int, int, int, int]:
```

***戻り値***

(ret, baud_rate, data_bit, parity, stop_bit, flow)

| 名前      | 型   | 説明                               |
| --------- | ---- | ---------------------------------- |
| ret       | int  | 成功時: 1<br />失敗時: 0           |
| baud_rate | int  | ボーレートを以下の値を取得します。 |
| data_bit  | int  | データビットを取得します。         |
| parity    | int  | パリティを取得します。             |
| stop_bit  | int  | ストップビットを取得します。       |
| flow      | int  | フロー制御を取得します。           |



------

### serial_openメソッド

シリアル通信のポートをオープンします。

AcapLib2のAcapSerialOpen()関数、AcapSerialSetParameter()関数相当

```python
def serial_open(self, baud_rate : int = 9600, data_bit : int = 8, parity : int = 0, stop_bit : int = 0, flow : int = 0) -> int:
```

***パラメータ***

| 名前      | 型   | 説明                                                         |
| --------- | ---- | ------------------------------------------------------------ |
| baud_rate | int  | ボーレートを以下の値の中から設定します。<br />9600, 19200, 38400, 57600, 115200 |
| data_bit  | int  | データビットを指定します。(現在、8 のみ設定可)             |
| parity    | int  | パリティを指定します。(現在、「0 :なし」 のみ設定可)       |
| stop_bit  | int  | ストップビットを指定します。(現在、「0: 1bit」 のみ設定可) |
| flow      | int  | フロー制御を指定します。(現在、「0 :なし」 のみ設定可)     |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### serial_readメソッド

シリアル通信コマンドの受信を行います。
受信はデータが空になるか、stop_bit、タイムアウトになるまで行われます。

AcapLib2のAcapSerialRead()関数相当

```python
def serial_read(self, asc : bool = True, time_out : int = 100, buffer_size : int = 511, end_str : Union[str, None] = None) -> Tuple[int, str, int]:
```

***パラメータ***

| 名前        | 型   | 説明                                                         |
| ----------- | ---- | ------------------------------------------------------------ |
| asc         | bool | シリアルに読込む(受信)文字のコードを指定します。<br />False: 16 進数(HEX)表記<br />True: ASCII |
| time_out    | int  | 受信したデータバッファの最後尾が、終端文字列と一致するまでのタイ ムアウト時間[mSec]を指定します。 |
| buffer_size | int  | コマンド文字列格納バッファのサイズを指定します。             |
| end_str     | int  | コマンドの終端文字列を指定します。                           |

***戻り値***

(ret, read_command, read_bytes)

| 名前         | 型   | 説明                     |
| ------------ | ---- | ------------------------ |
| ret          | int  | 成功時: 1<br />失敗時: 0 |
| read_command | str  | 受信した文字列           |
| read_bytes   | int  | 受信したデータのバイト数 |



------

### serial_writeメソッド

指定した文字コードでコマンドの書込み(送信)を行います。
AcapLib2のAcapSerialWrite()関数相当

```python
def serial_write(self, write_command : str, asc : bool = True, start_str : str = ””, end_str : str = "\r") -> int:
```

***パラメータ***

| 名前          | 型   | 説明                                                         |
| ------------- | ---- | ------------------------------------------------------------ |
| write_command | str  | シリアルに送信するコマンド                                   |
| asc           | bool | シリアルに書込む(送信)文字のコードを指定します。<br />False: 16 進数(HEX)表記<br />True: ASCII |
| start_str     | str  | asc がTRUE の場合に指定できます。<br/>コマンドの開始文字列(ASCII 表記) |
| end_str       | str  | asc がTRUE の場合に指定できます。<br/>コマンドの終端文字列(ASCII 表記) |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_bit_assign_exメソッド

シリアル通信の設定を取得します。

AcapLib2のAcapSetBitAssignEx()関数相当

```python
def set_bit_assign_ex(self, bit_assign_info : acaplib2.BITASSIGNINFO) -> int:
```

***パラメータ***

| 名前            | 型                     | 説明                                       |
| --------------- | ---------------------- | ------------------------------------------ |
| bit_assign_info | acaplib2.BITASSIGNINFO | 並べ替え情報を格納する構造体を指定します。 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_encoderメソッド

エンコーダの設定を行います。
AcapLib2のAcapSetEncoder()関数相当

```python
def set_encoder(self, enc_enable : int, enc_mode : int, enc_start : int, enc_phase : int, enc_direction : int, z_phase_enable : int, compare1 : int, compare2 : int) -> int:
```

***パラメータ***

| 名前           | 型   | 説明                                                         |
| -------------- | ---- | ------------------------------------------------------------ |
| enc_enable     | int  | エンコーダ使用設定<br />0: 無効<br />1: 有効(相対カウント)<br />2: 有効(絶対カウント) |
| enc_mode       | int  | エンコーダモード<br />0: エンコーダスキャンモード<br />1: エンコーダライン選択モード |
| enc_start      | int  | エンコーダの起動方法<br/>0: エンコーダをCPU で起動<br />1: エンコーダを外部トリガで起動<br />2: エンコーダをCPU で起動して、外部トリガを一致パルスとして使用 |
| enc_phase      | int  | エンコーダパルス<br/>0: AB相<br/>1: A相                      |
| enc_direction  | int  | エンコーダ回転方向<br />0: CW<br/>1: CCW                     |
| z_phase_enable | int  | Z 相使用設定<br />0: 使用しない<br />1: 使用する             |
| compare1       | int  | 比較レジスタ1(遅延パルス設定)<br />0 ~ 4,294,967,295        |
| compare2       | int  | 比較レジスタ2(間隔パルス設定)<br />1 ~ 4,294,967,295        |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_encoder_abs_multipointメソッド

絶対カウントマルチポイントの値を設定します。

```python
def set_encoder_abs_multipoint(self, point_no : int, abs_count : int) -> int:
```

***パラメータ***

| 名前      | 型   | 説明                                                         |
| --------- | ---- | ------------------------------------------------------------ |
| point_no  | int  | 設定するマルチポイントの番号を指定します。(0~255)           |
| abs_count | int  | 絶対カウント・マルチポイント値の設定を行います。<br />-2147483648 ~ 2147483647 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_external_triggerメソッド

外部トリガの種別、検出方法などを設定します。
AcapLib2のAcapSetExternalTrigger()関数相当

```python
def set_external_trigger(self, exp_trg_en : int, ext_trg_mode : int, ext_trg_dly : int, ext_trg_chatter : int, timeout : int) -> int:
```

***パラメータ***

| 名前            | 型   | 説明                                                         |
| --------------- | ---- | ------------------------------------------------------------ |
| exp_trg_en      | int  | 外部トリガとして使用する信号の選択<br />0 : 無効<br/>1 : TTL トリガ<br/>2 : 差動トリガ(エンコーダと共用)<br/>3 : 新規差動トリガ<br/>4 : OPT トリガ |
| ext_trg_mode    | int  | 外部トリガモード<br />0 : 外部トリガ1 回でCC が1 回出力するモード(連続外部トリガモード)<br/>1 : 外部トリガ1 回でCC が周期出力するモード(単発外部トリガモード) |
| ext_trg_dly     | int  | 外部トリガ 検出遅延時間 (1us 単位)                           |
| ext_trg_chatter | int  | 外部トリガ 検出無効時間 (1us 単位)                           |
| timeout         | int  | 検出待機時間 (1ms 単位)<br />1 ~ 4,294,967,295              |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_gpoutメソッド

GPOUT ピンの出力を制御します。
AcapLib2のAcapSetGPOut()関数相当

```python
 def set_gpout(self, output_level : int) -> int:
```

***パラメータ***

| 名前         | 型   | 説明                                                         |
| ------------ | ---- | ------------------------------------------------------------ |
| output_level | int  | 対応するBit のGPOUT ピンをON(High)/OFF(Low)します。<br />0:OFF/1:ON<br/>Bit0:GPOUT[1]ピン (GP_OUT1)<br/>Bit1:GPOUT[2]ピン (GP_OUT2)<br/>:<br/>Bit7:GPOUT[8]ピン |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_infoメソッド

設定IDを指定して、設定値を設定します。
プロパティに同様の設定値がある場合は設定しないでください。

AcapLib2のAcapSetInfo()関数相当

```python
def set_info(self, value_id : int, value : int, mem_num : int = -1) -> int:
```

***パラメータ***

| 名前     | 型   | 説明                                                         |
| -------- | ---- | ------------------------------------------------------------ |
| value_id | int  | 設定ID                                                       |
| value    | int  | 設定値                                                       |
| mem_num  | int  | value_idの値により使用方法が異なります。<br />詳細はAcapLib2マニュアルのAcapSetInfo関数を参照ください。 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_line_triggerメソッド

ラインセンサへ出力するCC 信号の周期・幅を設定します。
AcapLib2のAcapSetLineTrigger()関数相当

```python
def set_line_trigger(self, exp_cycle : int, exposure : int, exp_pol : int) -> int:
```

***パラメータ***

| 名前      | 型   | 説明                                                         |
| --------- | ---- | ------------------------------------------------------------ |
| exp_cycle | int  | CC 出力周期 (1us 単位) ※CoaXPress の場合はトリガパケットです。<br />0 ~ 4,294,967,295 |
| exposure  | int  | CC 出力幅 (1us 単位)<br />0 ~ 4,294,967,295                 |
| exp_pol   | int  | 出力論理<br />0 : 負論理<br/>1 : 正論理                      |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_power_supplyメソッド

カメラへの電源供給を制御します。

```python
def set_power_supply(self, value : int, wait_time : int = 6000) -> int:
```

***パラメータ***

| 名前      | 型   | 説明                                |
| --------- | ---- | ----------------------------------- |
| value     | int  | 電源のON/OFF<br />0: OFF<br />1: ON |
| wait_time | int  | タイムアウト時間をmsで指定します。  |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_shutter_triggerメソッド

エリアセンサシャッタトリガを設定します。

AcapLib2のAcapSetShutterTrigger()関数相当

```python
def set_shutter_trigger(self, exp_cycle : int, exposure : int, exp_pol : int, exp_unit : int, cc_sel : int) -> int:
```

***パラメータ***

| 名前      | 型   | 説明                                                    |
| --------- | ---- | ------------------------------------------------------- |
| exp_cycle | int  | CC 出力周期 (1us 単位)<br />0 ~ 429,496,729            |
| exposure  | int  | CC 出力幅 (1us 単位)<br />0 ~ 429,496,729              |
| exp_pol   | int  | 出力論理<br />0 : 負論理<br/>1 : 正論理                 |
| exp_unit  | int  | 未サポート                                              |
| cc_sel    | int  | 出力する番号<br />1 : CC1 / 2 : CC2 / 3 : CC3 / 4 : CC4 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### set_strobeメソッド

ストロボを設定します。

AcapLib2のAcapSetStrobe()関数相当

```python
def set_strobe(self, strobe_en : int, strobe_delay : int, strobe_time : int) -> int:
```

***パラメータ***

| 名前         | 型   | 説明                                                         |
| ------------ | ---- | ------------------------------------------------------------ |
| strobe_en    | int  | ストロボ 使用設定<br />0 : 無効 / 1 : 有効                   |
| strobe_delay | int  | ストロボパルスが出力されるまでの遅延時間 (1us 単位)<br />0 ~ 65,535 |
| strobe_time  | int  | ストロボパルスを出力する時間 (1us 単位)<br />0 ~ 65,535     |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### snapメソッド

画像を1枚取込みます。

高速に連続取込する場合は、grabをお使い下さい。(参照:[Snap sample](#Snap-sample))

regist_frame_end_callback()メソッドにより、コールバック関数が登録されている場合、戻り値で取得した画像データ(frame)は**None**になるため、登録したコールバック関数内にて画像データを取得してください。

```python
def snap(self, copy : bool = False) -> Tuple[int, Union[np.ndarray, None]]:
```

***パラメータ***

| 名前 | 型   | 説明                                                         |
| ---- | ---- | ------------------------------------------------------------ |
| copy | bool | True: リングバッファから画像データをコピーして取得します。<br/>False:リングバッファの画像データを取得します。この場合、画像デー<br/>タが上書きされる場合があります。 |

***戻り値***

(ret, frame)

| 名前  | 型         | 説明                                                         |
| ----- | ---------- | ------------------------------------------------------------ |
| ret   | int        | 成功時: 1<br />失敗時: 0                                     |
| frame | np.ndarray | 取得した画像データ<br/>カラー画像の場合、データの並びはB, G, Rとなります。<br/>(OpenCVと同等) |



------

### wait_frame_endメソッド

1フレーム分の画像取込完了を待ちます。

AcapLib2のAcapWaitEvent()関数のACL_INT_FRAMEEND相当

```python
def wait_frame_end(self, timeout : int = -1) -> int:
```

***パラメータ***

| 名前    | 型   | 説明                                                         |
| ------- | ---- | ------------------------------------------------------------ |
| timeout | int  | 待機時間をmsec単位で指定します。<br />値が負の場合、timeoutプロパティで指定された時間分待機します。 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### wait_grab_endメソッド

画像入力終了割り込みを待ちます。

AcapLib2のAcapWaitEvent()関数のACL_INT_GRABEND相当

```python
def wait_grab_end(self, timeout : int = -1) -> int:
```

***パラメータ***

| 名前    | 型   | 説明                                                         |
| ------- | ---- | ------------------------------------------------------------ |
| timeout | int  | 待機時間をmsec単位で指定します。<br />値が負の場合、timeoutプロパティで指定された時間分待機します。 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### wait_grab_startメソッド

画像入力開始割り込みを待ちます。

AcapLib2のAcapWaitEvent()関数のACL_INT_GRABSTART相当

```python
def wait_grab_start(self, timeout : int = -1) -> int:
```

***パラメータ***

| 名前    | 型   | 説明                                                         |
| ------- | ---- | ------------------------------------------------------------ |
| timeout | int  | 待機時間をmsec単位で指定します。<br />値が負の場合、timeoutプロパティで指定された時間分待機します。 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

### wait_gpinメソッド

GPIN 割り込みを待ちます。

AcapLib2のAcapWaitEvent()関数のACL_INT_GPIN相当

```python
def wait_gpin(self, timeout : int = -1) -> int:
```

***パラメータ***

| 名前    | 型   | 説明                                                         |
| ------- | ---- | ------------------------------------------------------------ |
| timeout | int  | 待機時間をmsec単位で指定します。<br />値が負の場合、timeoutプロパティで指定された時間分待機します。 |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

## Structure

| Structure             | Descriptoin                  |
| --------------------- | ---------------------------- |
| ACAPERRORINFOEX       | 拡張エラー情報               |
| ACL_BUFF_INFO_DIVIDE  | バッファ分割DMA設定          |
| ACL_BUFF_INFO_RESIZE  | サイズ違い DMA設定           |
| ACL_BUFF_INFO_ROI     | 非線形 DMA(ROI)設定          |
| ACL_CAM_FEATURE_INFO  | カメラ設定値情報             |
| ACL_CAM_FEATURE_LIST  | カメラ設定値構造(リスト)情報 |
| ACL_CAM_PROPERTY_LIST | カメラ設定値配列情報         |



------

### ACAPERRORINFOEX構造体

拡張エラー情報

 ***メンバー***

| 名前              | 型            | 説明                                                         |
| ----------------- | ------------- | ------------------------------------------------------------ |
| nChannel          | c_int         | エラーが発生したチャンネル<br />0: チャンネル依存なし<br />1: CH1<br />2: CH2<br />3: CH3<br />4: CH4<br />5: CH5<br />6: CH6 |
| dwCommonErrorCode | c_ulong       | 共通要因エラー                                               |
| dwBoardErrorCode  | c_ulong       | ボード固有要因エラー                                         |
| dwExtendErrorCode | c_ulong       | 拡張エラー                                                   |
| nGCErrorCode      | c_int         | GenICam エラーコードが格納されます。                         |
| nBaseErrorCode    | c_int         | GenICam アクセス時ベースライブラリエラーコードが格納されます。 |
| dwAckCode         | c_ulong       | GenICam アクセス時の Ack コードが格納されます。              |
| reserved          | c_ulong * 32  | 予約領域                                                     |
| pErrMsg           | c_char * 2048 | エラーメッセージが格納されます。                             |



------

### ACL_BUFF_INFO_DIVIDE構造体

バッファ分割DMA設定

***メンバー***

| 名前          | 型             | 説明                                                         |
| ------------- | -------------- | ------------------------------------------------------------ |
| SizeOf        | c_ulong        | 構造体のサイズ                                               |
| TransferXSize | c_ulong        | 実際に転送する横の画素数です。(=入力データ矩形サイズ)       |
| TransferYSize | c_ulong        | 実際に転送する行数です。(=入力データ矩形サイズ)             |
| BitWidth      | c_ulong        | 1 画素の Bit 幅です。                                        |
| NumOfRegions  | c_ulong        | バッファ分割数です。2 以上の値を指定します。                 |
| Region        | ACL_REGION * 1 | 2 つ以上の分割情報を、ACL_REGION 構造体配列で指定します。 NumOfRegions の数だけ構造体配列を用意しなければなりません。 |



------

### ACL_BUFF_INFO_RESIZE構造体

サイズ違い DMA設定

***メンバー***

| 名前          | 型       | 説明                                                         |
| ------------- | -------- | ------------------------------------------------------------ |
| SizeOf        | c_ulong  | 構造体のサイズ                                               |
| TransferXSize | c_ulong  | 実際に転送する横の画素数です。(=転送先バッファの横の画素数) |
| TransferYSize | c_ulong  | 実際に転送する行数です。(=転送先バッファの行数)             |
| BitWidth      | c_ulong  | 1 画素の Bit 幅です。                                        |
| DmaType       | c_ulong  | 転送方法に変化を与える場合に、以下の定義を BitOR で指定します。 <br />ACL_DMATYPE_YREVERSE(1) ACL_DMATYPE_VERT_REMAP(2) <br />何も設定しない場合は以下を指定します。 <br />ACL_DMATYPE_NORMAL(0) |
| pBuffer       | c_void_p | 転送するデータの外部バッファポインタを指定します。 ここに設定するバッファは、以下のサイズ以上を確保しなければなりません。 <br />バッファサイズ<br /> =TransferXSize×1 画素のバイト数×TransferYSize |



------

### ACL_BUFF_INFO_ROI構造体

サイズ違い DMA設定

***メンバー***

| 名前          | 型       | 説明                                                         |
| ------------- | -------- | ------------------------------------------------------------ |
| SizeOf        | c_ulong  | 構造体のサイズ                                               |
| TransferXSize | c_ulong  | 実際に転送する横の画素数です。(=転送先バッファの横の画素数) |
| TransferYSize | c_ulong  | 実際に転送する行数です。(=転送先バッファの行数)             |
| BitWidth      | c_ulong  | 1 画素の Bit 幅です。                                        |
| DmaType       | c_ulong  | 転送方法に変化を与える場合に、以下の定義を BitOR で指定します。 <br />ACL_DMATYPE_YREVERSE(1) <br />ACL_DMATYPE_VERT_REMAP(2) <br />何も設定しない場合は以下を指定します。 <br />ACL_DMATYPE_NORMAL(0) |
| BufferXSize   | c_ulong  | 転送先バッファの横の画素数です。                             |
| BufferYSize   | c_ulong  | 転送先バッファの行数です。                                   |
| XOffset       | c_ulong  | 転送先バッファ矩形の左上座標からの横(X)オフセットです。      |
| YOffset       | c_ulong  | 転送先バッファ矩形の左上座標からの縦(Y)オフセットです。      |
| pBuffer       | c_void_p | 転送するデータの外部バッファポインタを指定します。 ここに設定するバッファは、以下のサイズ以上を確保しなければなりませ ん。 <br />バッファサイズ<br /> =TransferXSize×1 画素のバイト数×TransferYSize |



------

### ACL_CAM_FEATURE_INFO構造体

カメラ設定値情報

***メンバー***

| 名前         | 型                  | 説明                                                         |
| ------------ | ------------------- | ------------------------------------------------------------ |
| nType        | c_int               | Feature のパラメータタイプが格納されます。<br />2:Integer <br />3:Boolean <br />4:Command <br />5:Float <br />6:String <br />9:Enumeration |
| nEntryStrNum | c_int               | EntryStr の要素数を返します。                                |
| EntryStr     | (c_char * 128) * 32 | Enum 文字列が格納されます。                                  |
| AccessMode   | c_char * 32         | AccessMode が格納されます。 (RO/RW/WO)                       |
| ValueMax     | c_double            | 設定可能最大値が格納されます。                               |
| ValueMin     | c_double            | 設定可能最小値が格納されます。                               |
| ValueInc     | c_double            | 設定可能単位が格納されます。                                 |



------

### ACL_CAM_FEATURE_LIST構造体

カメラ設定値構造(リスト)情報

***メンバー***

| 名前            | 型                  | 説明                                        |
| --------------- | ------------------- | ------------------------------------------- |
| CategoryNum     | c_ulonglong         | 取得した Category 数が格納されます。        |
| CategoryName    | (c_char * 128) * 64 | 取得した Category 名が格納されます。        |
| NextCategoryNum | c_ulonglong * 64    | Category 以下の Category 数が格納されます。 |
| FeatureNum      | c_ulonglong         | 取得した FeatureNum 数が格納されます。      |
| FeatureName     | (c_char * 128) * 64 | 取得した FeatureNum 名が格納されます。      |



------

### ACL_CAM_PROPERTY_LIST構造体

カメラ設定値配列情報

***メンバー***

| 名前              | 型                   | 説明                                   |
| ----------------- | -------------------- | -------------------------------------- |
| PropertyNum       | c_ulonglong          | 取得したプロパティ数が格納されます。   |
| PropertyName      | (c_char * 128) * 32  | 取得したプロパティ名が格納されます。   |
| PropertyValue     | (c_char * 2048) * 32 | 取得したプロパティ値が格納されます。   |
| PropertyAttrValue | (c_char * 128) * 32) | 取得したプロパティ属性が格納されます。 |



------

# CameraControl Class

カメラパラメータの取得/設定用クラスです。

AcaPy Ver.1.1.0において、CoaXPressカメラのみの対応となります。



## Examples

AcaPyクラスのインスタンスからCameraControlクラスをインスタンスし、AcaPyクラスオブジェクトで接続されているカメラに対して、カメラの設定を行います。

```python
import sys

import acapy    # AcaPyクラス
from acapy import cameracontrol as cam # カメラ設定用

# **************************************************************
# AcaPyクラスのインスタンス(ボードの設定を行う)
# **************************************************************
capture = acapy.AcaPy()

if capture.is_opened is False:
    # 画像入力ボードが見つからないときは終了
    capture.dispose()
    print("Board or Camera not recognized.")
    sys.exit(0)

# iniファイル(ボード設定ファイル)の読込、AcapLib2のiniファイルと共通です。
# iniファイルは実際に使用するカメラ用のファイルを指定してください。
ret = capture.load_inifile("./AreaSensor_mono.ini")

# ボードの設定例(AcaPyクラスのプロパティで値を設定)
capture.width = 640
capture.height = 480

# プロパティの値を設定したときは、reflect_param()メソッドの実行が必要になります。
capture.reflect_param() 

# ボードの設定をiniファイルに保存
capture.save_inifile("./AreaSensor_mono_save.ini")

# ボードの設定値の取得例(AcaPyクラスのプロパティで値を取得)
capture_width = capture.width   # 画像の幅
capture_height = capture.height # 画像の高さ
capture_camera_bit = capture.camera_bit # 画像のビット数

print("-------------------------------------------------")
# 取込む画像情報を表示
print(f"Capture Image Info: {capture_width} x {capture_height} x {capture_camera_bit}bit")
print("[Capture properties]")
# ボードに設定されている値一覧を表示
print(capture.get_acapy_properties_text())

# **************************************************************
# CameraControlクラスのインスタンス(カメラの設定を行う)
# **************************************************************
# AcaPyクラスオブジェクトからCameraControl用クラスをインスタンスする
camera = cam.CameraControl(capture)

# カメラの設定例(set_value(設定値の文字列, 値)を指定して設定)
ret = camera.set_value('Width', 640)
ret = camera.set_value('Height', 480)
# Commandの実行例(set_value(設定値の文字列))、設定値のカメラへの保存例
#ret = camera.set_value('UserSetSave')

# カメラ設定値の取得例(get_value(設定値の文字列)を実行して取得)
ret, camera_width, value_info = camera.get_value('Width')
ret, camera_height, value_info = camera.get_value('Height')
ret, camera_pixelformat, value_info = camera.get_value('PixelFormat')

print("-------------------------------------------------")
# カメラの画像情報を表示
print(f"Camera Image Info: {camera_width} x {camera_height} x {camera_pixelformat}")
print("[Camera setting]")

# カメラに設定されている値一覧を表示
print(camera.get_camera_category_feature_text())

# **************************************************************
# 画像の取込
# **************************************************************
ret, img = capture.snap()
if ret == acapy.AcaPy.OK:
    # 画像が取得できたとき
    print(img)

capture.dispose() # AcaPyクラスのリソースの解放
```



------

## Constructors

AcaPyクラスのインスタンスからCameraControlクラスをインスタンスします。

```Python
def __init__(self, acapy_obj : acapy.AcaPy, visibility : Visibility = Visibility.Invisible, serial_read_wait_time : float = 0):
```

***パラメータ***

| 名前                  | 型          | 説明                                                   |
| --------------------- | ----------- | ------------------------------------------------------ |
| acapy_obj             | acapy.AcaPy | AcaPyクラスオブジェクトを指定します。                  |
| visibility            | Visibility  | ユーザーレベルを指定します。                           |
| serial_read_wait_time | float       | シリアル通信の受信完了までの待ち時間を秒で指定します。 |



------

## Properties

| Properties            | Descriptoin                                                  | Get/Set |
| --------------------- | ------------------------------------------------------------ | :-----: |
| serial_read_wait_time | シリアル通信の受信完了までの待ち時間(Sec)を取得・設定します。 |   ●/●   |



------

## Methods

| Methods                                                      | Descriptoin                                          |
| ------------------------------------------------------------ | ---------------------------------------------------- |
| get_camera_category_feature_text(visibility, description_enabled) | カメラに設定されている値一覧のテキストを取得します。 |
| get_camera_feature_list(visibility)                          | カメラに設定されている値一覧をリストで取得します。   |
| get_value(value_name : str)                                  | カメラから値を取得します。                           |
| set_value(value_name, value)                                 | カメラに値を設定します。                             |
| serial_read(asc, time_out, buffer_size, end_str)             | カメラから値を受信します。                           |
| serial_write(write_command, asc, start_str, end_str)         | カメラに値を送信します。                             |



------

### get_camera_category_feature_textメソッド

カメラに設定されている値一覧のテキストを取得します。

```python
def get_camera_category_feature_text(self, visibility : Visibility = None, description_enabled : bool = False) -> str:
```

***パラメータ***

| 名前                | 型         | 説明                                                         |
| ------------------- | ---------- | ------------------------------------------------------------ |
| visibility          | Visibility | ユーザーレベルを指定します。<br />指定しない場合CameraControlクラスのインスタンス時に指定したvisibilityが適応されます。 |
| description_enabled | bool       | 設定値の説明を含める(True)か含めない(False)かを指定します。 |

***戻り値***

ret

| 名前 | 型   | 説明                       |
| ---- | ---- | -------------------------- |
| ret  | str  | カメラ設定値一覧のテキスト |



------

### get_camera_feature_listメソッド

カメラに設定されている値一覧をリストで取得します。

```python
def get_camera_feature_list(self, visibility : Visibility = None) -> List[ValueInfo]:
```

***パラメータ***

| 名前       | 型         | 説明                         |
| ---------- | ---------- | ---------------------------- |
| visibility | Visibility | ユーザーレベルを指定します。 |

***戻り値***

ret

| 名前 | 型              | 説明                     |
| ---- | --------------- | ------------------------ |
| ret  | List[ValueInfo] | カメラ設定値一覧のリスト |



------

### get_valueメソッド

カメラから値を取得します。

```python
def get_value(self, value_name : str) -> Tuple[bool, Union[int, float, str, bool, None], Union[ValueInfo, None]]:
```

***パラメータ***

| 名前       | 型   | 説明                            |
| ---------- | ---- | ------------------------------- |
| value_name | str  | 設定値名(Feature)を指定します。 |

***戻り値***

(ret, value, value_info)

| 名前       | 型        | 説明                            |
| ---------- | --------- | ------------------------------- |
| ret        | bool      | 成功時: True<br />失敗時: False |
| value      | Any       | カメラから取得した設定値        |
| value_info | ValueInfo | 設定値情報                      |



------

### set_valueメソッド

カメラに値を設定します。

設定値が Command の場合、value_nameのみを指定してください。(valueは指定しない)

```python
def set_value(self, value_name : str, value : Union[int, float, str, bool, None] = None) -> bool:
```

***パラメータ***

| 名前       | 型   | 説明                            |
| ---------- | ---- | ------------------------------- |
| value_name | str  | 設定値名(Feature)を指定します。 |
| value      | Any  | 設定する値を指定します。        |

***戻り値***

ret

| 名前 | 型   | 説明                            |
| ---- | ---- | ------------------------------- |
| ret  | bool | 成功時: True<br />失敗時: False |



------

### serial_readメソッド

シリアル通信コマンドの受信を行います。
受信はデータが空になるまで、stop_bitになるまで、タイムアウトになるまで行われます。

AcapLib2のAcapSerialRead()関数相当

```python
def serial_read(self, asc : bool = True, time_out : int = 100, buffer_size : int = 511, end_str : Union[str, None] = None) -> Tuple[int, str, int]:
```

***パラメータ***

| 名前        | 型   | 説明                                                         |
| ----------- | ---- | ------------------------------------------------------------ |
| asc         | bool | シリアルに読込む(受信)文字のコードをASCIIにするかどうかを指定します。<br />False: 16 進数(HEX)表記<br />True: ASCII |
| time_out    | int  | 受信したデータバッファの最後尾が、終端文字列と一致するまでのタイ ムアウト時間[mSec]を指定します。 |
| buffer_size | int  | コマンド文字列格納バッファのサイズを指定します。             |
| end_str     | int  | コマンドの終端文字列を指定します。                           |

***戻り値***

(ret, read_command, read_bytes)

| 名前         | 型   | 説明                     |
| ------------ | ---- | ------------------------ |
| ret          | int  | 成功時: 1<br />失敗時: 0 |
| read_command | str  | 受信した文字列           |
| read_bytes   | int  | 受信したデータのバイト数 |



------

### serial_writeメソッド

指定した文字コードでコマンドの書込み(送信)を行います。
AcapLib2のAcapSerialWrite()関数相当

```python
def serial_write(self, write_command : str, asc : bool = True, start_str : Union[str, None] = None, end_str : Union[str, None] = "\r") -> int:
```

***パラメータ***

| 名前          | 型   | 説明                                                         |
| ------------- | ---- | ------------------------------------------------------------ |
| write_command | str  | シリアルに送信するコマンド                                   |
| asc           | bool | シリアルに書込む(送信)文字のコードをASCIIにするかどうかを指定します。<br />False: 16 進数(HEX)表記<br />True: ASCII |
| start_str     | str  | asc がTRUE の場合に指定できます。<br/>コマンドの開始文字列(ASCII 表記)<br/>使用しない場合は「None」を指定して下さい |
| end_str       | str  | asc がTRUE の場合に指定できます。<br/>コマンドの終端文字列(ASCII 表記)<br/>使用しない場合は「None」を指定して下さい |

***戻り値***

ret

| 名前 | 型   | 説明                     |
| ---- | ---- | ------------------------ |
| ret  | int  | 成功時: 1<br />失敗時: 0 |



------

## Enum

| Enum        | Descriptoin                                            |
| ----------- | ------------------------------------------------------ |
| AccessMode  | 設定値のアクセスモードを設定します。                   |
| FeatureType | カメラ設定値の種類を設定します。                       |
| Visibility  | カメラ設定のユーザーレベル(表示レベル)を設定します。 |



------

### AccessMode列挙型

設定値のアクセスモードを設定します。

***フィールド***

| 名前 | 値    | 説明         |
| ---- | ----- | ------------ |
| NI   | b'NI' | 未実装       |
| NA   | b'NA' | 使用不可     |
| WO   | b'WO' | 書込のみ     |
| RO   | b'RO' | 読込のみ     |
| RW   | b'RW' | 読込・書込可 |



------

### FeatureType列挙型

カメラ設定値の種類を設定します。

***フィールド***

| 名前        | 値   | 説明         |
| ----------- | ---- | ------------ |
| Value       | 0    | 値           |
| Base        | 1    | ベース       |
| Integer     | 2    | 整数型       |
| Boolean     | 3    | ブーリアン型 |
| Command     | 4    | コマンド     |
| Float       | 5    | 小数型       |
| String      | 6    | 文字列       |
| Register    | 7    | レジスタ     |
| Category    | 8    | カテゴリ     |
| Enumeration | 9    | 列挙型       |
| EnumEntry   | 10   | 列挙項目     |



------

### Visibility列挙型

カメラ設定のユーザーレベル(表示レベル)を設定します。

***フィールド***

| 名前                 | 値   | 説明                       |
| -------------------- | ---- | -------------------------- |
| Beginner             | 0    | 初心者                     |
| Expert               | 1    | エキスパート               |
| Guru                 | 2    | グル                       |
| Invisible            | 3    | 不可視(すべて表示を含む) |
| _UndefinedVisibility | 99   | 未設定                     |



------

## Dataclass

### ValueInfo class

設定値情報

| 名前        | 型          | 初期値            | 説明                                                         |
| ----------- | ----------- | ----------------- | ------------------------------------------------------------ |
| category    | str         | ''                | category名<br />(get_camera_category_feature_text()メソッド使用時のみ設定します) |
| name        | str         | ''                | feature名                                                    |
| value       | str         | ''                | 設定値                                                       |
| description | str         | ''                | featureの説明                                                |
| type        | FeatureType | FeatureType.Value | featureの種類                                                |
| access_mode | AccessMode  | AccessMode.NI     | アクセスモード                                               |
| enum_list   | list        |                   | enum一覧                                                     |
| min         | float       | 0.0               | 最小値                                                       |
| max         | float       | 0.0               | 最大値                                                       |
| increment   | float       | 0.0               | 最小設定分解能                                               |



------

# GraphicsBox Class

tkinterのCanvasクラスを継承した、tkinter用画像表示ウィジェットとなります。

## Constructors

| Constructors                             | Descriptoin                             |
| ---------------------------------------- | --------------------------------------- |
| GraphicsBox(parent, option = value, ...) | option設定はTkinterのCanvasクラスと同じ |



------

## Properties

| Properties       | Descriptoin                                                  | Get/Set |
| ---------------- | ------------------------------------------------------------ | :-----: |
| affine_matrix    | 画像表示に使用している3x3のアフィン変換行列を取得・設定します。 |   ●/●   |
| bright_enabled   | 輝度値の表示(True)/非表示(False)の設定を取得・設定します。  |   ●/●   |
| cross_beam_color | プロファイル用十字線の色を取得・設定します。                 |   ●/●   |
| disp_scale       | 画像表示倍率を取得します。                                   |   ●/-   |
| grid_color       | グリッド線の色を取得・設定します。                           |   ●/●   |
| grid_disp_scale  | グリッド線を表示する画像の最小倍率を取得・設定します。       |   ●/●   |
| grid_enabled     | 画像拡大時のグリッド線の表示(True)/非表示(False)の設定を取得・設定します。 |   ●/●   |
| max_scale        | 画像の拡大時の最大倍率を取得・設定します。                   |   ●/●   |
| min_scale        | 画像の縮小時の最小倍率を取得・設定します。                   |   ●/●   |
| profile_enabled  | プロファイルの表示(True)/非表示(False)の設定を取得・設定します。 |   ●/●   |
| profile_hight    | プロファイルグラフの高さを取得・設定します。                 |   ●/●   |
| profile_x        | プロファイルを表示するX座標(ウィジェットの座標)を取得・設定します。 |   ●/●   |
| profile_x_color  | モノクロ画像時の横方向のプロファイルの線色を取得・設定します。 |   ●/●   |
| profile_y        | プロファイルを表示するY座標(ウィジェットの座標)を取得・設定します。 |   ●/●   |
| profile_y_color  | モノクロ画像時の縦方向のプロファイルの線色を取得・設定します。 |   ●/●   |
| zoomup_direction | 画像拡大時のホイールの回転方向を取得・設定します。  <br />-1:下へ回転、1:上へ回転 |   ●/●   |



## Methods

| Methods                             | Descriptoin                                                  |
| ----------------------------------- | ------------------------------------------------------------ |
| dest_to_src_xy(xy)                  | 現在の表示状態において、ウィジェット上の座標を画像上の座標へ変換します。 |
| draw_image(image)                   | PillowのImage形式もしくはnumpyのndarray形式の画像をGraphicsBoxへ表示します。表示可能なのは8bit,24bit,32bitの画像のみです。 |
| redraw_image()                      | 画像を再描画します。                                         |
| reset_transform()                   | 画像表示を初期状態(左上に等倍率)に戻します。               |
| scale_at(scale, cx, cy)             | 指定した点を中心に拡大縮小します。                           |
| scale_transform(scale)              | 画像表示の相対倍率を指定し拡大縮小します。                   |
| src_to_dest_xy(xy)                  | 現在の表示状態において、画像上の座標をウィジェット上の座標へ変換します。 |
| translate(offset_x, offset_y)       | 画像表示位置を平行移動します。                               |
| zoom_fit(image_width, image_height) | 画像の幅と高さを指定し、ウィジェット全体に画像を表示します。 |



------

### dest_to_src_xyメソッド

表示している画像のウィジェット上の座標(ウィジェットの左上が原点)から、画像の座標へ変換します。

```python
def dest_to_src_xy(self, xy : Tuple[float, float]) -> Tuple[float, float]:
```

***パラメータ***

| 名前 | 型                  | 説明                                                         |
| ---- | ------------------- | ------------------------------------------------------------ |
| xy   | Tuple[float, float] | 表示している画像のウィジェット上のxy座標(ウィジェットの左上が原点)をfloat型のタプルで指定します。 |

***戻り値***

(x, y)

| 名前   | 型                  | 説明                                            |
| ------ | ------------------- | ----------------------------------------------- |
| (x, y) | Tuple[float, float] | 画像上のxy座標がfloat型のタプルで取得されます。 |



------

### draw_imageメソッド

画像データをウィジェットに表示します。
表示可能なのは8bit,24bit,32bitの画像のみとなります。

```python
def draw_image(self, image : Union[Image.Image, np.ndarray]) -> int:
```

***パラメータ***

| 名前  | 型                             | 説明                                                         |
| ----- | ------------------------------ | ------------------------------------------------------------ |
| image | Union[Image.Image, np.ndarray] | 表示する画像データ<br />データはPillowのImageオブジェクトもしくはnumpyのndarrayオブジェクトとなります。<br />カラー画像の場合、R,G,Bの順で指定してください。 |

***戻り値***

id

| 名前 | 型   | 説明                                        |
| ---- | ---- | ------------------------------------------- |
| id   | int  | tkinterのcreate_imageの戻り値を取得します。 |



------

### redraw_imageメソッド

画像を再描画します。

```python
def redraw_image(self):
```



------

### reset_transformメソッド

クラス内部で使用している画像表示用アフィン変換行列をセット(単位行列にする)します。
リセット後に画像を表示すると、画像はウィジェットの左上に等倍(倍率が1)で表示されます。

```python
def reset_transform(self):
```



------

### scale_atメソッド

指定した座標(ウィジェットの座標)を中心に画像を拡大縮小します。

```python
def scale_at(self, scale:float, cx:float, cy:float):
```

***パラメータ***

| 名前  | 型    | 説明                                                         |
| ----- | ----- | ------------------------------------------------------------ |
| scale | float | 画像の表示倍率を指定します。<br />倍率は現在の表示状態からの相対倍率となります。 |
| cx    | float | 拡大縮小の基点となる x 座標(ウィジェットの座標)を指定します。 |
| cy    | float | 拡大縮小の基点となる y 座標(ウィジェットの座標)を指定します。 |



------

### scale_transformメソッド

原点(ウィジェットの左上)を中心に画像を拡大縮小します。

```python
def scale_transform(self, scale:float):
```

***パラメータ***

| 名前  | 型    | 説明                                                         |
| ----- | ----- | ------------------------------------------------------------ |
| scale | float | 画像の表示倍率を指定します。<br />倍率は現在の表示状態からの相対倍率となります。 |



------

### src_to_dest_xyメソッド

表示している画像上の座標から、ウィジェット上の座標へ変換します。

```python
def src_to_dest_xy(self, xy : Tuple[float, float]) -> Tuple[float, float]:
```

***パラメータ***

| 名前 | 型                  | 説明                                                      |
| ---- | ------------------- | --------------------------------------------------------- |
| xy   | Tuple[float, float] | 表示している画像上のxy座標をfloat型のタプルで指定します。 |

***戻り値***

(x, y)

| 名前   | 型                  | 説明                                                    |
| ------ | ------------------- | ------------------------------------------------------- |
| (x, y) | Tuple[float, float] | ウィジェット上のxy座標がfloat型のタプルで取得されます。 |



------

### translateメソッド

画像の表示位置を指定した大きさ(ウィジェット上の距離)で平行移動します。

```python
def translate(self, offset_x : float, offset_y : float):
```

***パラメータ***

| 名前     | 型    | 説明                                                    |
| -------- | ----- | ------------------------------------------------------- |
| offset_x | float | 画像のX方向の移動量をウィジェット上の距離で指定します。 |
| offset_y | float | 画像のY方向の移動量をウィジェット上の距離で指定します。 |



------

### zoom_fitメソッド

画像全体がウィジェット全体に表示されるように表示位置、倍率を調整します。

```python
def zoom_fit(self, image_width : int, image_height : int):
```

***パラメータ***

| 名前         | 型   | 説明                             |
| ------------ | ---- | -------------------------------- |
| image_width  | int  | 画像の幅の画素数を指定します。   |
| image_height | int  | 画像の高さの画素数を指定します。 |



------

# Changelog

## Ver.1.1.0

| モジュール    | バージョン | 備考                                          |
| ------------- | ---------- | --------------------------------------------- |
| acaplib2      | Ver.1.1.0  | CXP対応に伴う変更<br />AcapLib2 Ver.8.2.0対応 |
| acapy         | Ver.1.1.0  | CXP対応に伴う変更<br />AcapLib2 Ver.8.2.0対応 |
| cameracontrol | Ver.1.1.0  | 初版(新規追加)                                |
| graphicsbox   | Ver.1.1.0  |                                               |

**【主な変更内容】**

- AcapLib2のバージョンアップ(Ver.8.2.0)に伴うCoaXPressボード対応の修正
- コールバック関数の対応



**【acapy変更点】**

- **関数名の変更**
  ・refrect_param() から reflect_param() へ変更
  
- **下記、メソッドの追加**

  get_bit_assign_ex(), get_camera_category_feature_list(), get_camera_feature_info(), get_camera_property_list(), get_last_error_ex(), get_acapy_properties_text(),
  regist_frame_end_callback(), regist_grab_end_callback(), regist_gpin_callback(), regist_overwrite_callback(), regist_timeout_callback(), regist_device_alm_callback(), get_enable_board_ch_list(), set_bit_assign_ex(), dispose()
  
- **以下、メソッドの削除**

  print_acapy_values()
  
- **下記、構造体の追加**

  ACL_CAM_FEATURE_INFO, ACL_CAM_PROPERTY_LIST, ACL_CAM_FEATURE_LIST, 
  ACAPERRORINFOEX
  
- **以下、プロパティの追加**

  connection_num, data_mask_ex, debug_print_enabled, 
  encoder_rlt_all_count, encoder_rlt_count, external_trigger_polarity, 
  fan_rpm, port_a_assign, port_b_assign, port_c_assign, port_d_assign, port_e_assign, 
  port_f_assign, port_g_assign, port_h_assign, port_i_assign, port_j_assign, 
  serial_read_wait_time, tag, alarm_status, cxp_camlink_timeout, cxp_bdlink_timeout,
  freq_d, freq_e, freq_f, freq_g, freq_h, 
  freq_opt1, freq_opt2, freq_opt3, freq_opt4, freq_opt5, freq_opt6, freq_opt7, freq_opt8,
  freq_ttl3, freq_ttl4, freq_ttl5, freq_ttl6, freq_ttl7, freq_ttl8,
  tap_direction9, tap_direction10,
  cxp_phy_error_count, frame_no, line_no
  
- **以下、プロパティの削除**

  cxp_acquision_start_address, cxp_acquision_start_value, cxp_acquision_stop_address, cxp_acquision_stop_value

- **バグ修正**

  ・read_frames()メソッドにおいて、grab_start()メソッドの初回起動時に不要なoverwriteのワーニングが発生してしまうのを修正
  
  

**【cameracontrolクラスの新規追加】**

カメラパラメータの取得/設定用クラスの新規追加
本バージョン(Ver.1.1.0)においては、CoaXPressカメラのみ対応



**【graphicsbox変更点】**

ソースコード上のワーニング修正



**【acaplib2(AcapLib2関数定義ファイル)変更点】**

- CoaXPressボードにてカメラパラメータの取得/設定をサポート

- **下記、関数の追加**
  
  AcapSerialWriteBinary(), AcapSerialReadBinary(), AcapGetCameraCategoryFeatureList()
  AcapGetCameraFeatureInfo(), AcapGetCameraPropertyList(), AcapGetLastErrorCodeEx()
  AcapRegistCallback()
  
- **下記、構造体の追加**
  
  ACL_CAM_FEATURE_INFO, ACL_CAM_PROPERTY_LIST, ACL_CAM_FEATURE_LIST, ACAPERRORINFOEX
  
- **下記、定数の追加**
  
  ACL_PORT_A_ASSIGN, ACL_PORT_B_ASSIGN, ACL_PORT_C_ASSIGN, ACL_PORT_D_ASSIGN, ACL_PORT_E_ASSIGN,
  ACL_PORT_F_ASSIGN, ACL_PORT_G_ASSIGN, ACL_PORT_H_ASSIGN, ACL_PORT_I_ASSIGN, ACL_PORT_J_ASSIGN, ACL_DATA_MASK_EX,  ACL_EXT_POL, 
  ACL_DATA_MASK_EX, ACL_CXP_ACQUISITION_CONTROL, ACL_EXT_POL, ACL_CXP_CONNECTION_NUM,
  ACL_CXP_TAPGEOMETRY, ACL_CXP_STREAM1_ID, ACL_CXP_STREAM2_ID, ACL_CXP_STREAM3_ID,
  ACL_CXP_STREAM4_ID, ACL_CXP_STREAM5_ID, ACL_CXP_STREAM6_ID, 
  ACL_CXP_CAMLINK_TIMEOUT, ACL_CXP_BDLINK_TIMEOUT, 
  ACL_ALM_THERMAL, ACL_ALM_FAN, ACL_ALM_FPGA_TEMP, ACL_ALM_BOARD_TEMP
  ACL_CXP_TAPGEOMETRY_1X_1Y, ACL_CXP_TAPGEOMETRY_1X_2YE_SINGLE, ACL_CXP_TAPGEOMETRY_1X_2YE_MULTI,
  ACL_FREQ_E, ACL_FREQ_F, ACL_FREQ_G, ACL_FREQ_H, ACL_ALARM_STATUS, 
  ACL_FAN_RPM, ACL_INT_DEVICE_ALM, 
  ACL_3300_INTERNAL_GEN_LIBRARY_ERROR, ACL_GET_CAMERA_ACCESS_ERROR,
  ACL_CAMERA_ACCESS_ERROR, ACL_NOT_SUPPORT_ERROR, ACL_3400_ERROR_ID, 
  ACL_36124_ERROR_ID, ACL_3666_ERROR_ID, ACL_36121_ERROR_ID, ACL_BD_ERR_K_CODE_CAL, ACL_BD_ERR_STREAM_SIZE, ACL_BD_ERR_DP_END, ACL_BD_ERR_DP_START, ACL_BD_ERR_DP_DUP,
   ACL_BD_ERR_PACKET_LOSS, ACL_BD_ERR_CMD_ACK_FIFO_O, ACL_BD_ERR_IMD_FIFO_U, ACL_BD_ERR_IMD_FIFO_O, ACL_BD_ERR_IMH_FIFO_U,
   ACL_BD_ERR_IMH_FIFO_O, ACL_BD_ERR_STREAM_FIFO_O, ACL_BD_ERR_DISPARITY, ACL_BD_ERR_8B10B_CODE, ACL_BD_ERR_STRAM_CRC,
   ACL_BD_ERR_ACK_CRC, ACL_BD_ERR_ENC_LINE, ACL_BD_ERR_ENC, ACL_BD_ERR_FRAME, ACL_BD_ERR_LINE, ACL_BD_ERR_SCAN,
  ACL_CXP_PHY_ERROR_COUNT, ACL_FRAME_NO, ACL_LINE_NO



------

## [Ver.1.0.0](https://pypi.org/project/acapy/1.0.0/)

| モジュール  | バージョン | 備考                                 |
| ----------- | ---------- | ------------------------------------ |
| acaplib2    | Ver.1.0.0  | 初版<br />AcapLib2 Ver.7.3.0のみ対応 |
| acapy       | Ver.1.0.0  | 初版<br />AcapLib2 Ver.7.3.0のみ対応 |
| graphicsbox | Ver.1.0.0  | 初版                                 |

初版


            

Raw data

            {
    "_id": null,
    "home_page": "https://faq-avaldata.dga.jp/faq_list.html?category=35",
    "name": "acapy",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "AVALDATA acapy AcapLib2",
    "author": "AVALDATA",
    "author_email": "",
    "download_url": "",
    "platform": null,
    "description": "acapy package (Python bindings for AVALDATA AcapLib2 )\r\n\r\n# Index\r\n\r\n- [**Installation**](#Installation)\r\n- [**Dependencies**](#Dependencies)\r\n- [**LICENSE**](#LICENSE)\r\n- [**AcaPy Class**](#AcaPy-Class)\r\n- [**CameraControl Class**](#CameraControl-Class)\r\n- [**GraphicsBox Class**](#GraphicsBox-Class)\r\n- [**Changelog**](#Changelog)\r\n\r\n\r\n\r\n# Installation\r\n\r\n```python\r\npip install acapy\r\n```\r\n\r\n\r\n\r\n# Dependencies\r\n\r\n| AcaPy\u30d0\u30fc\u30b8\u30e7\u30f3                                      | \u4f9d\u5b58\u95a2\u4fc2                                                     |\r\n| ---------------------------------------------------- | ------------------------------------------------------------ |\r\n| acapy 1.1.0                                          | Python3.8\u4ee5\u964d<br />[AcapLib2](https://www.avaldata.co.jp/products/imaging/item/sdk-acaplib2) Ver.8.2.0\u4ee5\u964d<br />NumPy<br />Pillow(Tkinter\u30b5\u30f3\u30d7\u30eb\u4f7f\u7528\u6642)<br />OpenCV(\u30b5\u30f3\u30d7\u30eb\u306e\u4f7f\u7528\u6642) |\r\n| [acapy 1.0.0](https://pypi.org/project/acapy/1.0.0/) | Python3.6\u4ee5\u964d<br />[AcapLib2](https://www.avaldata.co.jp/products/imaging/item/sdk-acaplib2) Ver.7.3.0\u306e\u307f<br />NumPy<br />Pillow(Tkinter\u30b5\u30f3\u30d7\u30eb\u4f7f\u7528\u6642)<br />OpenCV(\u30b5\u30f3\u30d7\u30eb\u306e\u4f7f\u7528\u6642) |\r\n\r\n\r\n\r\n# LICENSE\r\n\r\n```\r\nBSD 3-Clause License\r\n\r\nCopyright (c) 2024, AVALDATA\r\nAll rights reserved.\r\n\r\nRedistribution and use in source and binary forms, with or without\r\nmodification, are permitted provided that the following conditions are met:\r\n\r\n1. Redistributions of source code must retain the above copyright notice, this\r\n   list of conditions and the following disclaimer.\r\n\r\n2. Redistributions in binary form must reproduce the above copyright notice,\r\n   this list of conditions and the following disclaimer in the documentation\r\n   and/or other materials provided with the distribution.\r\n\r\n3. Neither the name of the copyright holder nor the names of its\r\n   contributors may be used to endorse or promote products derived from\r\n   this software without specific prior written permission.\r\n\r\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\r\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\r\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\r\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\r\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\r\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\r\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\r\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\r\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\r\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r\n```\r\n\r\n\r\n\r\n# AcaPy Class\r\n\r\nAcapLib2\u306ePython\u30e9\u30c3\u30d1\u30fc\u30af\u30e9\u30b9\u3067\u3059\u3002\r\n\r\n\r\n\r\n## Examples\r\n\r\n### Snap sample\r\n\r\ns\u30ad\u30fc\u306e\u5165\u529b\u3054\u3068\u306b\u3001\u753b\u50cf\uff11\u679a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nq\u30ad\u30fc\u306e\u5165\u529b\u3067\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u7d42\u4e86\u3057\u307e\u3059\u3002\r\n\r\n\u9023\u7d9a\u3067\u753b\u50cf\u53d6\u308a\u8fbc\u307f\u3092\u884c\u3046\u5834\u5408\u306fGrab sample\u3092\u53c2\u7167\u304f\u3060\u3055\u3044\u3002\r\n\r\n```python\r\nimport sys\r\n\r\nimport cv2      # OpenCV\r\nimport acapy    # AcaPy\r\n\r\n# ----------------------------------------------------------------\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\r\ncapture = acapy.AcaPy()\r\n\r\nif capture.is_opened is False:\r\n    # \u753b\u50cf\u5165\u529b\u30dc\u30fc\u30c9\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3068\u304d\u306f\u7d42\u4e86\r\n    print(\"Board or Camera not recognized.\")\r\n    capture.dispose()\r\n    sys.exit(0)\r\n\r\n# ini\u30d5\u30a1\u30a4\u30eb\uff08\u30dc\u30fc\u30c9\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\uff09\u306e\u8aad\u8fbc\u3001AcapLib2\u306eini\u30d5\u30a1\u30a4\u30eb\u3068\u5171\u901a\u3067\u3059\u3002\r\n# ini\u30d5\u30a1\u30a4\u30eb\u306f\u5b9f\u969b\u306b\u4f7f\u7528\u3059\u308b\u30ab\u30e1\u30e9\u7528\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002\r\nret = capture.load_inifile(\"./AreaSensor_mono.ini\")\r\nif ret == 0:\r\n    # ini\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u8fbc\u306b\u5931\u6557\u3057\u305f\u3068\u304d(\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3001\u30d5\u30a1\u30a4\u30eb\u306e\u8a2d\u5b9a\u304c\u7570\u306a\u308b\u306a\u3069)\r\n    print(\"Load inifile error\")\r\n    capture.dispose()\r\n    sys.exit(0)\r\n\r\n# ----------------------------------------------------------------\r\n# \u753b\u50cf\u53d6\u8fbc\r\n\r\n# \u753b\u50cf\u8868\u793a\u30a6\u30a3\u30f3\u30c9\u30a6\u4f5c\u6210(s\u30ad\u30fc\u5165\u529b:Snap, q\u30ad\u30fc\u5165\u529b:\u7d42\u4e86)\r\nWINDOW_TITLE = \"AcaPy Sample [\\\"s\\\"=snap,\\\"q\\\"=quit]\"\r\ncv2.namedWindow(WINDOW_TITLE, cv2.WINDOW_NORMAL)\r\n\r\nwhile True:\r\n    # \u30ad\u30fc\u5165\u529b\r\n    key = cv2.waitKey(1) & 0xFF\r\n\r\n    if key == ord('s'):\r\n        # snap(\u753b\u50cf\uff11\u679a\u306e\u53d6\u5f97)\r\n        print(\"[snap]\")\r\n        ret, frame = capture.snap()\r\n        if ret == acapy.AcaPy.OK:\r\n            cv2.imshow(WINDOW_TITLE, frame)\r\n\r\n    elif key == ord('q') or key == 27: # q \u3082\u3057\u304f\u306f esc\u30ad\u30fc\u3067\u7d42\u4e86\r\n        # quit\r\n        print(\"[quit]\")\r\n        break\r\n\r\ncapture.dispose() # AcaPy\u30af\u30e9\u30b9\u306e\u30ea\u30bd\u30fc\u30b9\u306e\u89e3\u653e\r\ncv2.destroyAllWindows()\r\n```\r\n\r\n\r\n\r\n### Grab sample\r\n\r\ng\u30ad\u30fc\u306e\u5165\u529b\u3067\u753b\u50cf\u306e\u9023\u7d9a\u53d6\u8fbc(Grab)\u3092\u958b\u59cb\uff0f\u505c\u6b62\u3057\u307e\u3059\u3002\r\n\r\nq\u30ad\u30fc\u306e\u5165\u529b\u3067\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u7d42\u4e86\u3057\u307e\u3059\u3002\r\n\r\n```python\r\nimport sys\r\n\r\nimport cv2      # OpenCV\r\nimport acapy    # AcaPy\r\n\r\n# ----------------------------------------------------------------\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\r\ncapture = acapy.AcaPy()\r\n\r\nif capture.is_opened is False:\r\n    # \u753b\u50cf\u5165\u529b\u30dc\u30fc\u30c9\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3068\u304d\u306f\u7d42\u4e86\r\n    print(\"Board or Camera not recognized.\")\r\n    capture.dispose()\r\n    sys.exit(0)\r\n\r\n# ini\u30d5\u30a1\u30a4\u30eb\uff08\u30dc\u30fc\u30c9\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\uff09\u306e\u8aad\u8fbc\u3001AcapLib2\u306eini\u30d5\u30a1\u30a4\u30eb\u3068\u5171\u901a\u3067\u3059\u3002\r\nret = capture.load_inifile(\"./AreaSensor_mono.ini\")\r\nif ret == 0:\r\n    # ini\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u8fbc\u306b\u5931\u6557\u3057\u305f\u3068\u304d(\u30d5\u30a1\u30a4\u30eb\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3001\u30d5\u30a1\u30a4\u30eb\u306e\u8a2d\u5b9a\u304c\u7570\u306a\u308b\u306a\u3069)\r\n    print(\"Load inifile error\")\r\n    capture.dispose()\r\n    sys.exit(0)\r\n\r\n# \u753b\u50cf\u8868\u793a\u30a6\u30a3\u30f3\u30c9\u30a6\u4f5c\u6210(s\u30ad\u30fc\u5165\u529b:Snap, g\u30ad\u30fc\u5165\u529b:Grab, q\u30ad\u30fc\u5165\u529b:\u7d42\u4e86)\r\nWINDOW_TITLE = \"AcaPy Sample [\\\"g\\\"=grab,\\\"q\\\"=quit]\"\r\ncv2.namedWindow(WINDOW_TITLE, cv2.WINDOW_NORMAL)\r\n\r\n# ----------------------------------------------------------------\r\n# \u753b\u50cf\u53d6\u8fbc\r\nwhile True:\r\n    # \u524d\u56de\u53d6\u5f97\u3057\u305f\u753b\u50cf\u306e\u6b21\u306e\u753b\u50cf\u304b\u3089\u4eca\u56de\u307e\u3067\u306e\u753b\u50cf\u3092\u53d6\u5f97\r\n    ret, frames, count, frame_no = capture.read_frames()\r\n\r\n    if frames is not None:\r\n        # \u6700\u65b0\u306e\u753b\u50cf\u3092\u8868\u793a\r\n        print(f\"[grab] FrameNo={frame_no}, count={count}, error_info={ret}\")\r\n        cv2.imshow (WINDOW_TITLE, frames[count - 1] )\r\n\r\n    # \u30ad\u30fc\u5165\u529b\r\n    key = cv2.waitKey(1) & 0xFF\r\n\r\n    if key == ord('g'):\r\n        # grab(\u9023\u7d9a\u753b\u50cf\u53d6\u5f97)\r\n        if capture.is_grab is True:\r\n            # grab\u4e2d\u306e\u3068\u304d\u306fgrab\u3092\u505c\u6b62\u3059\u308b\r\n            capture.grab_stop()\r\n            print(\"[grab stop]\")\r\n\r\n        else:\r\n            # grab\u4e2d\u3067\u306a\u3044\u3068\u304d\u306fGrab\u3092\u958b\u59cb\u3059\u308b\r\n            capture.grab_start()\r\n            print(\"[grab start]\")\r\n\r\n    elif key == ord('q') or key == 27: # q \u3082\u3057\u304f\u306f esc\u30ad\u30fc\u3067\u7d42\u4e86\r\n        if capture.is_grab is True:\r\n            # grab\u4e2d\u306e\u3068\u304d\u306fgrab\u3092\u505c\u6b62\u3059\u308b\r\n            capture.grab_stop()\r\n            print(\"[grab stop]\")\r\n        break\r\n        \r\ncapture.dispose() # AcaPy\u30af\u30e9\u30b9\u306e\u30ea\u30bd\u30fc\u30b9\u306e\u89e3\u653e\r\ncv2.destroyAllWindows()\r\n```\r\n\r\n\r\n\r\n## Constructors\r\n\r\n\u30dc\u30fc\u30c9\u756a\u53f7\u3001\u30c1\u30e3\u30f3\u30cd\u30eb\u756a\u53f7\u3092\u6307\u5b9a\u3057\u3066\u3001\u753b\u50cf\u5165\u529b\u30dc\u30fc\u30c9\u3092\u30aa\u30fc\u30d7\u30f3\u3057\u307e\u3059\u3002\r\n\u5b9f\u969b\u306b\u30dc\u30fc\u30c9\u304c\u30aa\u30fc\u30d7\u30f3\u51fa\u6765\u305f\u304b\u3069\u3046\u304b\u306f\u3001**is_opened**\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\r\n\r\n```\r\ndef __init__(self, board_id: int = 0, ch: int = 1, debug_print: bool = True):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d        | \u578b   | \u8aac\u660e                                                         |\r\n| ----------- | ---- | ------------------------------------------------------------ |\r\n| board_id    | int  | 0\u4ee5\u4e0a\u306e\u30dc\u30fc\u30c9\u756a\u53f7\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                              |\r\n| ch          | int  | 1\u4ee5\u4e0a\u306e\u30c1\u30e3\u30f3\u30cd\u30eb\u756a\u53f7\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                          |\r\n| debug_print | bool | True\u3092\u6307\u5b9a\u3057\u305f\u5834\u5408\u3001AcaPy\u30af\u30e9\u30b9\u30e1\u30bd\u30c3\u30c9\u306b\u30a8\u30e9\u30fc\u7b49\u304c\u767a\u751f\u3057\u305f\u5834\u5408\u3001\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u30a8\u30e9\u30fc\u60c5\u5831\u304c\u8868\u793a\u3055\u308c\u307e\u3059\u3002False\u3092\u6307\u5b9a\u3059\u308b\u3068\u4f55\u3082\u8868\u793a\u3055\u308c\u307e\u305b\u3093\u3002 |\r\n\r\n\r\n\r\n## Properties\r\n\r\n\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5024\u306f\u3001\u5024\u3092\u8a2d\u5b9a\u5f8c\u3001reflect_param()\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068\u8a2d\u5b9a\u304c\u753b\u50cf\u5165\u529b\u30dc\u30fc\u30c9\u306b\u53cd\u6620\u3055\u308c\u307e\u3059\u3002\r\nreflect_param()\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u3057\u5fd8\u308c\u305f\u5834\u5408\u3001grab_start()\u30e1\u30bd\u30c3\u30c9\u5185\u3067reflect_param()\u30e1\u30bd\u30c3\u30c9\u304c\u5b9f\u884c\u3055\u308c\u307e\u3059\u3002\r\n\r\n| Properties                              | Descriptoin                                                  | Get/Set |\r\n| --------------------------------------- | ------------------------------------------------------------ | :-----: |\r\n| a_cw_ccw                                | \u30a8\u30f3\u30b3\u30fc\u30c0A\u76f8\u306e\u56de\u8ee2\u65b9\u5411\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                        |   \u25cf/-   |\r\n| acaplib2_version                        | AcapLib2\u306eDLL\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                        |   \u25cf/-   |\r\n| alarm_status                            | \u30ad\u30e3\u30d7\u30c1\u30e3\u30dc\u30fc\u30c9\u306e\u30a2\u30e9\u30fc\u30e0\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                 |   \u25cf/\u25cf   |\r\n| b_cw_ccw                                | \u30a8\u30f3\u30b3\u30fc\u30c0B\u76f8\u306e\u56de\u8ee2\u65b9\u5411\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                        |   \u25cf/-   |\r\n| bayer_enable                            | \u30d9\u30a4\u30e4\u30fc\u5909\u63db\u306e\u6709\u52b9\uff0f\u7121\u52b9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                 |   \u25cf/\u25cf   |\r\n| bayer_grid                              | \u30d9\u30a4\u30e4\u30fc\u5909\u63db\u958b\u59cb\u4f4d\u7f6e\u306e\u30d1\u30bf\u30fc\u30f3\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002           |   \u25cf/\u25cf   |\r\n| bayer_input_bit                         | Bayer\u753b\u50cf\u306eBit\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                         |   \u25cf/\u25cf   |\r\n| bayer_lut_data                          | \u7de8\u96c6\u3059\u308bLUT\u30c7\u30fc\u30bf\u914d\u5217(\u30ea\u30b9\u30c8)\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002            |   \u25cf/\u25cf   |\r\n| bayer_lut_edit                          | BayerLUT\u306e\u7de8\u96c6\u3092\u958b\u59cb\u30fb\u505c\u6b62\u3057\u307e\u3059\u3002                           |   \u25cf/\u25cf   |\r\n| bayer_output_bit                        | Bayer\u5909\u63db\u5f8c\u306eBit\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                       |   \u25cf/\u25cf   |\r\n| board_bit                               | \u30dc\u30fc\u30c9\u3067\u78ba\u4fdd\u3059\u308b\u753b\u50cf\u7528\u30e1\u30e2\u30ea\u306e\u30d3\u30c3\u30c8\u5e45\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002         |   \u25cf/-   |\r\n| board_error                             | \u30dc\u30fc\u30c9\u30a8\u30e9\u30fc\u3092\u53d6\u5f97\u30fb\u30af\u30ea\u30a2\u3057\u307e\u3059\u3002                           |   \u25cf/\u25cf   |\r\n| board_id                                | \u521d\u671f\u5316\u3055\u308c\u305f\u30dc\u30fc\u30c9ID\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                           |   \u25cf/-   |\r\n| board_name                              | \u521d\u671f\u5316\u3055\u308c\u305f\u30dc\u30fc\u30c9\u540d\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                           |   \u25cf/-   |\r\n| board_temp                              | \u57fa\u677f\u6e29\u5ea6\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                       |   \u25cf/-   |\r\n| buffer_zero_fill                        | \u521d\u671f\u5316\u6642\u306b\u30d0\u30c3\u30d5\u30a1\u3092\u30bc\u30ed\u30af\u30ea\u30a2\u3059\u308b\u304b\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002     |   \u25cf/\u25cf   |\r\n| camera_bit                              | \u30ab\u30e1\u30e9\u304b\u3089\u5165\u529b\u3059\u308b\u753b\u50cf\u306e\u30d3\u30c3\u30c8\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002         |   \u25cf/\u25cf   |\r\n| camera_state                            | \u30ab\u30e1\u30e9\u306e\u63a5\u7d9a\u72b6\u614b\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| cancel_initialize                       | \u521d\u671f\u5316\u3068\u5185\u90e8\u30d0\u30c3\u30d5\u30a1\u78ba\u4fdd\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002           |   \u25cf/\u25cf   |\r\n| capture_flag                            | \u30ad\u30e3\u30d7\u30c1\u30e3\u72b6\u6cc1\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002<br />0: Grab\u505c\u6b62\u4e2d<br />1: Grab\u4e2d |   \u25cf/-   |\r\n| cc1_polarity                            | CC1\u4fe1\u53f7\u306e\u51fa\u529b\u30ec\u30d9\u30eb\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                      |   \u25cf/\u25cf   |\r\n| cc2_polarity                            | CC2\u4fe1\u53f7\u306e\u51fa\u529b\u30ec\u30d9\u30eb\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                      |   \u25cf/\u25cf   |\r\n| cc3_polarity                            | CC3\u4fe1\u53f7\u306e\u51fa\u529b\u30ec\u30d9\u30eb\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                      |   \u25cf/\u25cf   |\r\n| cc4_polarity                            | CC4\u4fe1\u53f7\u306e\u51fa\u529b\u30ec\u30d9\u30eb\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                      |   \u25cf/\u25cf   |\r\n| cc_cycle                                | CC\u4fe1\u53f7\u306e\u5468\u671f[usec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                       |   \u25cf/\u25cf   |\r\n| cc_cycle_ex                             | CC\u4fe1\u53f7\u306e\u5468\u671f[100nsec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                    |   \u25cf/\u25cf   |\r\n| cc_delay                                | CC\u4fe1\u53f7\u306e\u51fa\u529b\u9045\u5ef6\u6642\u9593[usec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002               |   \u25cf/\u25cf   |\r\n| cc_enable                               | CC\u4fe1\u53f7\u51fa\u529b\u306e\u6709\u52b9\uff0f\u7121\u52b9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: CC\u4fe1\u53f7\u3092\u51fa\u529b\u3057\u306a\u3044<br />1: CC\u4fe1\u53f7\u3092\u51fa\u529b\u3059\u308b |   \u25cf/\u25cf   |\r\n| cc_out_no                               | CC\u4fe1\u53f7\u306e\u756a\u53f7(1\uff5e4)\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                       |   \u25cf/\u25cf   |\r\n| cc_polarity                             | CC\u4fe1\u53f7\u306e\u8ad6\u7406\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                             |   \u25cf/\u25cf   |\r\n| cc_stop                                 | \u753b\u50cf\u5165\u529b\u505c\u6b62\u5f8c\u3001CC\u51fa\u529b\u3092\u884c\u3046\u304b\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002     |   \u25cf/\u25cf   |\r\n| ch                                      | \u521d\u671f\u5316\u3055\u308c\u305f\u30c1\u30e3\u30f3\u30cd\u30eb\u756a\u53f7\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                     |   \u25cf/-   |\r\n| channel_num                             | \u30dc\u30fc\u30c9\u306e\u7dcf\u30c1\u30e3\u30f3\u30cd\u30eb\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                         |   \u25cf/-   |\r\n| chatter_separate                        | \u5916\u90e8\u30c8\u30ea\u30ac\u691c\u51fa\u7121\u52b9\u6642\u9593\u306e\u8a2d\u5b9a\u65b9\u6cd5\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002         |   \u25cf/\u25cf   |\r\n| count_cc                                | CC\u4fe1\u53f7\u306e\u51fa\u529b\u56de\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| count_exttrig                           | EXTTRIG(\u5916\u90e8\u30c8\u30ea\u30ac)\u4fe1\u53f7\u306e\u5165\u529b\u56de\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002              |   \u25cf/-   |\r\n| count_fval                              | FVAL\u4fe1\u53f7\u306e\u5165\u529b\u56de\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                             |   \u25cf/-   |\r\n| count_lval                              | LVAL\u4fe1\u53f7\u306e\u5165\u529b\u56de\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                             |   \u25cf/-   |\r\n| custom                                  | FPGA\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u304c\u884c\u308f\u308c\u305f\u756a\u53f7\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                 |   \u25cf/-   |\r\n| cxp_bdlink_timeout                      | CXP\u30ab\u30e1\u30e9\u30ea\u30f3\u30af\u30a2\u30c3\u30d7\u6642\u306e\u5f85\u6a5f\u6642\u9593\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002\uff08\u30dc\u30fc\u30c9\u5074\uff09 |   \u25cf/\u25cf   |\r\n| cxp_bitrate                             | CXP\u306e\u30d3\u30c3\u30c8\u30ec\u30fc\u30c8\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                        |   \u25cf/\u25cf   |\r\n| cxp_camlink_timeout                     | CXP\u30ab\u30e1\u30e9\u30ea\u30f3\u30af\u30a2\u30c3\u30d7\u6642\u306e\u5f85\u6a5f\u6642\u9593\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002\uff08\u30ab\u30e1\u30e9\u5074\uff09 |   \u25cf/\u25cf   |\r\n| cxp_connection_num                      | CXP\u306e\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u30ab\u30e1\u30e9\u3078\u30b3\u30cd\u30af\u30b7\u30e7\u30f3\u6570\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| cxp_link_speed                          | CXP\u306e\u30ea\u30f3\u30af\u901f\u5ea6\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                          |   \u25cf/\u25cf   |\r\n| cxp_phy_error_count                     | CXP\u306ePHY\u30a8\u30e9\u30fc\u306e\u56de\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                           |   \u25cf/-   |\r\n| data_mask_ex                            | \u30ab\u30e1\u30e9\u30ea\u30f3\u30af\u30dd\u30fc\u30c8I\uff5eJ\u306e\u30de\u30b9\u30af\u5024\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002         |   \u25cf/\u25cf   |\r\n| data_mask_lower                         | \u30ab\u30e1\u30e9\u30ea\u30f3\u30af\u30dd\u30fc\u30c8A\uff5eD\u306e\u30de\u30b9\u30af\u5024\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002         |   \u25cf/\u25cf   |\r\n| data_mask_upper                         | \u30ab\u30e1\u30e9\u30ea\u30f3\u30af\u30dd\u30fc\u30c8E\uff5eH\u306e\u30de\u30b9\u30af\u5024\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002         |   \u25cf/\u25cf   |\r\n| debug_print_enabled                     | \u30a8\u30e9\u30fc\u60c5\u5831\u306a\u3069\u3092\u30b3\u30f3\u30bd\u30fc\u30eb\u753b\u9762\u306b\u8868\u793a\u3059\u308b(True)\u304b\u3001\u3057\u306a\u3044\uff08False\uff09\u304b\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| device                                  | \u5b9f\u88c5\u3055\u308c\u3066\u3044\u308b\u30c7\u30d0\u30a4\u30b9\u540d\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                       |   \u25cf/-   |\r\n| dval_enable                             | \u30ab\u30e1\u30e9\u30c7\u30fc\u30bf\u5165\u529b\u6642\u306eDVAL\u4fe1\u53f7\u53c2\u7167\u306e\u6709\u52b9(1)\uff0f\u7121\u52b9(0)\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| encoder_abs_count                       | \u30a8\u30f3\u30b3\u30fc\u30c0\u7d76\u5bfe\u30ab\u30a6\u30f3\u30bf\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                       |   \u25cf/-   |\r\n| encoder_abs_mode                        | \u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u30e2\u30fc\u30c9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                       |   \u25cf/\u25cf   |\r\n| encoder_abs_start                       | \u7d76\u591a\u5024\u30a8\u30f3\u30b3\u30fc\u30c0\u306e\u958b\u59cb\uff0f\u505c\u6b62\u306e\u5236\u5fa1\u5024\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002     |   \u25cf/\u25cf   |\r\n| encoder_agr_count                       | \u76f8\u5bfe\u4f4d\u7f6e\u30a8\u30f3\u30b3\u30fc\u30c0\u4f7f\u7528\u6642\u306e\u4e00\u81f4\u30d1\u30eb\u30b9\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002         |   \u25cf/-   |\r\n| encoder_all_count                       | \u76f8\u5bfe\u4f4d\u7f6e\u30a8\u30f3\u30b3\u30fc\u30c0\u4f7f\u7528\u6642\u306e\u7dcf\u30ab\u30a6\u30f3\u30c8\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002         |   \u25cf/-   |\r\n| encoder_compare_reg_1                   | \u30a8\u30f3\u30b3\u30fc\u30c0\u6bd4\u8f03\u30ec\u30b8\u30b9\u30bf\uff11\u306e\u5024\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />\u30a8\u30f3\u30b3\u30fc\u30c0\u30ab\u30a6\u30f3\u30c8\u958b\u59cb\u4f4d\u7f6e\u306e\u30d1\u30eb\u30b9\u6570\u306e\u8a2d\u5b9a |   \u25cf/\u25cf   |\r\n| encoder_compare_reg_2                   | \u30a8\u30f3\u30b3\u30fc\u30c0\u6bd4\u8f03\u30ec\u30b8\u30b9\u30bf2\u306e\u5024\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />\u30a8\u30f3\u30b3\u30fc\u30c0\u30d1\u30eb\u30b9\u30ab\u30a6\u30f3\u30c8\u306e\u5206\u5468\u306e\u8a2d\u5b9a |   \u25cf/\u25cf   |\r\n| encoder_count                           | \u30a8\u30f3\u30b3\u30fc\u30c0\u76f8\u5bfe\u30ab\u30a6\u30f3\u30bf\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                       |   \u25cf/-   |\r\n| encoder_direction                       | \u30a8\u30f3\u30b3\u30fc\u30c0\u5165\u529b\u30d1\u30eb\u30b9\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: CW<br />1:CCW |   \u25cf/\u25cf   |\r\n| encoder_enable                          | \u30a8\u30f3\u30b3\u30fc\u30c0\u306e\u7121\u52b9\uff0f\u6709\u52b9\uff0f\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u30e2\u30fc\u30c9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u7121\u52b9<br />1: \u6709\u52b9<br />2: \u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u30e2\u30fc\u30c9 |   \u25cf/\u25cf   |\r\n| encoder_mode                            | \u30a8\u30f3\u30b3\u30fc\u30c0\u52d5\u4f5c\u30e2\u30fc\u30c9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u30a8\u30f3\u30b3\u30fc\u30c0\u30b9\u30ad\u30e3\u30f3\u30e2\u30fc\u30c9<br />1: \u30a8\u30f3\u30b3\u30fc\u30c0\u30e9\u30a4\u30f3\u9078\u629e\u30e2\u30fc\u30c9 |   \u25cf/\u25cf   |\r\n| encoder_phase                           | \u30a8\u30f3\u30b3\u30fc\u30c0\u5165\u529b\u30d1\u30eb\u30b9\u9078\u629e\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: AB\u76f8\uff08\uff14\u9013\u500d\u30ab\u30a6\u30f3\u30c8\u306b\u306a\u308a\u307e\u3059\uff09<br />0: A\u76f8\uff08\uff12\u9013\u500d\u30ab\u30a6\u30f3\u30c8\u306b\u306a\u308a\u307e\u3059\uff09 |   \u25cf/\u25cf   |\r\n| encoder_rlt_all_count                   | \u76f8\u5bfe\u30ab\u30a6\u30f3\u30c8\u4f7f\u7528\u6642\u306e\u3001\u7dcf\u30ab\u30a6\u30f3\u30c8\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002             |   \u25cf/-   |\r\n| encoder_rlt_count                       | \u76f8\u5bfe\u30ab\u30a6\u30f3\u30c8\u4f7f\u7528\u6642\u306e\u3001\u76f8\u5bfe\u30ab\u30a6\u30f3\u30c8\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002           |   \u25cf/-   |\r\n| encoder_start                           | \u5916\u90e8\u30c8\u30ea\u30ac\u3092\u30a8\u30f3\u30b3\u30fc\u30c0\u3067\u4f7f\u7528\u3059\u308b\u65b9\u6cd5\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u5916\u90e8\u30c8\u30ea\u30ac\u3092\u30a8\u30f3\u30b3\u30fc\u30c0\u30ab\u30a6\u30f3\u30c8\u958b\u59cb\u306b\u7528\u3044\u306a\u3044<br />1: \u5916\u90e8\u30c8\u30ea\u30ac\u3092\u30a8\u30f3\u30b3\u30fc\u30c0\u30ab\u30a6\u30f3\u30c8\u958b\u59cb\u306b\u7528\u3044\u308b<br />2: \u5916\u90e8\u30c8\u30ea\u30ac\u306e\u5165\u529b\u3054\u3068\u306b\uff11\u30e9\u30a4\u30f3 \u306e\u753b\u50cf\u3092\u53d6\u308a\u8fbc\u307f\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| encoder_z_phase                         | \u30a8\u30f3\u30b3\u30fc\u30c0\u30ab\u30a6\u30f3\u30c8\u958b\u59cb\u306bZ\u76f8\u3092\u4f7f\u7528\u3059\u308b\u304b\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: Z\u76f8\u3092\u4f7f\u7528\u3057\u306a\u3044<br />1: Z\u76f8\u306e\u5165\u529b\u304b\u3089\u30a8\u30f3\u30b3\u30fc\u30c0\u306e\u30ab\u30a6\u30f3\u30c8\u3092\u958b\u59cb\u3059\u308b\u3002 |   \u25cf/\u25cf   |\r\n| exposure                                | CC\u4fe1\u53f7\u306e\u51fa\u529b\u5e45\uff08\u9732\u5149\u6642\u9593\uff09[usec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002         |   \u25cf/\u25cf   |\r\n| exposure_ex                             | CC\u4fe1\u53f7\u306e\u51fa\u529b\u5e45\uff08\u9732\u5149\u6642\u9593\uff09[100nsec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002      |   \u25cf/\u25cf   |\r\n| express_link                            | PCI-Express\u30d0\u30b9\u306b\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u30ea\u30f3\u30af\u5e45\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002        |   \u25cf/-   |\r\n| external_trigger_chatter                | \u5916\u90e8\u30c8\u30ea\u30ac\u691c\u51fa\u7121\u52b9\u6642\u9593[usec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002             |   \u25cf/\u25cf   |\r\n| external_trigger_chatter<br />_separate | \u5916\u90e8\u30c8\u30ea\u30ac\u691c\u51fa\u9045\u5ef6\u6642\u9593[usec]\u3092\u8a2d\u5b9a\u30fb\u53d6\u5f97\u3057\u307e\u3059\u3002             |   \u25cf/\u25cf   |\r\n| external_trigger_delay                  | \u5916\u90e8\u30c8\u30ea\u30ac\u691c\u51fa\u9045\u5ef6\u6642\u9593[usec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002             |   \u25cf/\u25cf   |\r\n| external_trigger_enable                 | \u5916\u90e8\u30c8\u30ea\u30ac\u306b\u4f7f\u7528\u3059\u308b\u4fe1\u53f7\u9078\u629e\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u7121\u52b9<br />1: TTL<br />2: RS-422<br />3: \u65b0\u898f\u4f5c\u52d5<br />4: PHOTO<br />\u8a73\u7d30\u306fAcapLib2\u306e\u30de\u30cb\u30e5\u30a2\u30eb\u3092\u53c2\u7167\u304f\u3060\u3055\u3044\u3002 |   \u25cf/\u25cf   |\r\n| external_trigger_mode                   | \u5916\u90e8\u30c8\u30ea\u30ac\u3092\u4f7f\u7528\u3057\u3066CC\u4fe1\u53f7\u3092\u51fa\u529b\u3059\u308b\u65b9\u6cd5\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u5916\u90e8\u30c8\u30ea\u30ac\u5165\u529b\u306b\u5408\u308f\u305b\u3066\uff11\u56de\u306e\u64ae\u5f71\u3092\u884c\u3044\u307e\u3059\u3002<br />1: \u5916\u90e8\u30c8\u30ea\u30ac\u5165\u529b\u304b\u3089\u9023\u7d9a\u7684\u306b\u64ae\u5f71\u3092\u884c\u3044\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| external_trigger_polarity               | \u5916\u90e8\u30c8\u30ea\u30ac\u306e\u691c\u51fa\u6975\u6027\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u8ca0\u6975\u6027\uff08\u30ed\u30fc\u30a2\u30af\u30c6\u30a3\u30d6\uff09\uff08\u521d\u671f\u5024\uff09<br />1: \u6b63\u6975\u6027\uff08\u30cf\u30a4\u30a2\u30af\u30c6\u30a3\u30d6\uff09 |   \u25cf/\u25cf   |\r\n| fan_prm                                 | \u30ad\u30e3\u30d7\u30c1\u30e3\u30dc\u30fc\u30c9\u306e FAN \u56de\u8ee2\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                  |   \u25cf/-   |\r\n| fifo_full                               | FIFO\u30b9\u30c6\u30fc\u30bf\u30b9\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                 |   \u25cf/-   |\r\n| fpga_temp                               | FPGA\u6e29\u5ea6\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                       |   \u25cf/-   |\r\n| fpga_version                            | FPGA\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                 |   \u25cf/-   |\r\n| frame_no                                | \u5165\u529b\u304c\u5b8c\u4e86\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                       |   \u25cf/-   |\r\n| freq_a                                  | A\u76f8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                |   \u25cf/-   |\r\n| freq_b                                  | B\u76f8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                |   \u25cf/-   |\r\n| freq_d                                  | D\u76f8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                |   \u25cf/-   |\r\n| freq_e                                  | E\u76f8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                |   \u25cf/-   |\r\n| freq_f                                  | F\u76f8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                |   \u25cf/-   |\r\n| freq_g                                  | G\u76f8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                |   \u25cf/-   |\r\n| freq_h                                  | H\u76f8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                |   \u25cf/-   |\r\n| freq_fval                               | FVAL\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_lval                               | LVAL\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_opt1                               | OPT1\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_opt2                               | OPT2\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_opt3                               | OPT3\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_opt4                               | OPT4\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_opt5                               | OPT5\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_opt6                               | OPT6\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_opt7                               | OPT7\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_opt8                               | OPT8\u306e\u5468\u6ce2\u6570(kHz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| freq_ttl1                               | TTL1\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| freq_ttl2                               | TTL2\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| freq_ttl3                               | TTL3\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| freq_ttl4                               | TTL4\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| freq_ttl5                               | TTL5\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| freq_ttl6                               | TTL6\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| freq_ttl7                               | TTL7\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| freq_ttl8                               | TTL8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               |   \u25cf/-   |\r\n| freq_z                                  | Z\u76f8\u306e\u5468\u6ce2\u6570(Hz)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                |   \u25cf/-   |\r\n| gpin_pin_sel                            | GP_IN\u30d4\u30f3\u5272\u8fbc\u307f\u30d4\u30f3\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                      |   \u25cf/\u25cf   |\r\n| gpin_pol                                | GP_IN\u306e\u30ec\u30d9\u30eb\u3092Bit\u60c5\u5831\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002                         |   \u25cf/-   |\r\n| gpout_sel                               | GP_OUT\u30d4\u30f3\u306e\u51fa\u529b\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                     |   \u25cf/\u25cf   |\r\n| gpout_pol                               | GP_OUT\u30d4\u30f3\u306e\u51fa\u529b\u30ec\u30d9\u30eb\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                   |   \u25cf/\u25cf   |\r\n| handle                                  | \u521d\u671f\u5316\u3055\u308c\u305f\u30dc\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                     |   \u25cf/-   |\r\n| height                                  | \u753b\u50cf\u5165\u529b\u30b5\u30a4\u30ba\u306e\u9ad8\u3055\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                     |   \u25cf/\u25cf   |\r\n| infrared_enable                         | BGRI\u306e\u6709\u52b9\uff0f\u7121\u52b9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: BGRI\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u4ee5\u5916<br />1: BGRI\u30d5\u30a9\u30fc\u30de\u30c3\u30c8(4ch\u753b\u50cf\u30c7\u30fc\u30bf) |   \u25cf/\u25cf   |\r\n| interrupt_line                          | \uff11\u30d5\u30ec\u30fc\u30e0\u5165\u529b\u30e9\u30a4\u30f3\u6570\u30ab\u30a6\u30f3\u30c8\u9593\u9694\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002       |   \u25cf/\u25cf   |\r\n| interval_exttrig_1                      | \u8a8d\u8b58\u3057\u305f\u5916\u90e8\u30c8\u30ea\u30ac\u9593\u9694\u306e\u6642\u9593\uff08\u30ab\u30a6\u30f3\u30c8\u5024\uff09\u306e\u6700\u65b0\u306e\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |   \u25cf/-   |\r\n| interval_exttrig_2                      | \u8a8d\u8b58\u3057\u305f\u5916\u90e8\u30c8\u30ea\u30ac\u9593\u9694\u306e\u6642\u9593\uff08\u30ab\u30a6\u30f3\u30c8\u5024\uff09\u306e\uff12\u756a\u76ee\u306b\u65b0\u3057\u3044\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |   \u25cf/-   |\r\n| interval_exttrig_3                      | \u8a8d\u8b58\u3057\u305f\u5916\u90e8\u30c8\u30ea\u30ac\u9593\u9694\u306e\u6642\u9593\uff08\u30ab\u30a6\u30f3\u30c8\u5024\uff09\u306e3\u756a\u76ee\u306b\u65b0\u3057\u3044\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |   \u25cf/-   |\r\n| interval_exttrig_4                      | \u8a8d\u8b58\u3057\u305f\u5916\u90e8\u30c8\u30ea\u30ac\u9593\u9694\u306e\u6642\u9593\uff08\u30ab\u30a6\u30f3\u30c8\u5024\uff09\u306e4\u756a\u76ee\u306b\u65b0\u3057\u3044\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |   \u25cf/-   |\r\n| is_grab                                 | Grab\u4e2d\u304b\u3069\u3046\u304b\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002<br />\u3082\u3057\u304f\u306f\u3001grab_start()\u5f8c\u306bgrab_stop()\u3092\u5b9f\u884c\u3057\u3066\u3044\u306a\u3044\u3002<br />True: grab\u4e2d<br />False: grab\u3057\u3066\u3044\u306a\u3044 |   \u25cf/-   |\r\n| is_opened                               | \u30ad\u30e3\u30d7\u30c1\u30e3\u30dc\u30fc\u30c9\u306eOpen\u306b\u6210\u529f\u3057\u305f\u304b\u3069\u3046\u304b\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002       |   \u25cf/-   |\r\n| line_no                                 | \u5165\u529b\u304c\u5b8c\u4e86\u3057\u305f\u30e9\u30a4\u30f3\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                         |   \u25cf/-   |\r\n| line_reverse                            | \u30ab\u30e1\u30e9\u304b\u3089\u5165\u529b\u3057\u305f\u753b\u50cf\u30c7\u30fc\u30bf\u306e\u5de6\u53f3\u53cd\u8ee2\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u5de6\u53f3\u53cd\u8ee2\u3057\u306a\u3044<br />1: \u5de6\u53f3\u53cd\u8ee2\u3059\u308b |   \u25cf/\u25cf   |\r\n| lval_delay                              | \u30ab\u30e1\u30e9\u304b\u3089\u5165\u529b\u3059\u308bLVAL\u306eX\u65b9\u5411\u9045\u5ef6\u91cf(clock)\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| lvds_cclk_sel                           | \u30ab\u30e1\u30e9\u99c6\u52d5\u30af\u30ed\u30c3\u30af\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                       |   \u25cf/\u25cf   |\r\n| lvds_phase_sel                          | \u5165\u529b\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u306e\u4f4d\u76f8\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                   |   \u25cf/\u25cf   |\r\n| lvds_synclt_sel                         | SYNCLT\u30d4\u30f3\u306e\u5165\u51fa\u529b\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                       |   \u25cf/\u25cf   |\r\n| mem_num                                 | \u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306e\u753b\u50cf\u9762\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                 |   \u25cf/\u25cf   |\r\n| narrow10bit_enable                      | \u30c7\u30fc\u30bf\u8a70\u3081\uff0810bit\u753b\u50cf\u306e\u30d3\u30c3\u30c8\u30ae\u30e3\u30c3\u30d7\u306a\u3057\uff09\u8ee2\u9001\u306e\u6709\u52b9\uff0f\u7121\u52b9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u30c7\u30fc\u30bf\u8a70\u3081\u8ee2\u9001\u7121\u52b9<br />1: \u30c7\u30fc\u30bf\u8a70\u3081\u8ee2\u9001\u6709\u52b9 |   \u25cf/\u25cf   |\r\n| pix_shift                               | \u30ab\u30e1\u30e9\u304b\u3089\u5165\u529b\u3059\u308b\u30c7\u30fc\u30bf\u3092\u53f3\u30b7\u30d5\u30c8\u3059\u308b\u30d3\u30c3\u30c8\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| pocl_lite_enable                        | PoCL-Lite\u30ab\u30e1\u30e9\u7528\u8a2d\u5b9a\u306e\u6709\u52b9(1)\uff0f\u7121\u52b9(0)\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002  |   \u25cf/\u25cf   |\r\n| port_a_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8A\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_b_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8B\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_c_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8C\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_d_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8D\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_e_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8E\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_f_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8F\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_g_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8G\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_h_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8H\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_i_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8I\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| port_j_assign                           | \u30ab\u30e1\u30e9\u304b\u3089\u306e\u5165\u529b\u30c7\u30fc\u30bf\u306b\u5bfe\u3059\u308b\u3001\u30dc\u30fc\u30c9\u30dd\u30fc\u30c8J\u306e\u5272\u308a\u632f\u308a\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| power_state                             | \u30ab\u30e1\u30e9\u96fb\u6e90\u30a8\u30e9\u30fc\u72b6\u614b\u3092\u53d6\u5f97\u30fb\u30af\u30ea\u30a2\u3057\u307e\u3059\u3002                   |   \u25cf/\u25cf   |\r\n| power_supply                            | \u30ab\u30e1\u30e9\u3078\u306e\u7d66\u96fb\u72b6\u614b\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u7d66\u96fbOFF<br />1: \u7d66\u96fbON |   \u25cf/\u25cf   |\r\n| reverse_dma_enable                      | \u4e0a\u4e0b\u53cd\u8ee2DMA\u306e\u6709\u52b9\uff0f\u7121\u52b9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u7121\u52b9<br />1: \u6709\u52b9 |   \u25cf/\u25cf   |\r\n| rgb_swap_enable                         | \u30ab\u30e9\u30fc\u30c7\u30fc\u30bf\u306eR, G, B\u306e\u30c7\u30fc\u30bf\u4e26\u3073\u3092\u5165\u308c\u66ff\u3048\u307e\u3059\u3002<br />0: \u7121\u52b9(BGR)<br />1: \u6709\u52b9(RGB) |   \u25cf/\u25cf   |\r\n| rolling_shutter                         | \u30ed\u30fc\u30ea\u30f3\u30b0\u30b7\u30e3\u30c3\u30bf\u306e\u6709\u52b9\uff0f\u7121\u52b9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u30ed\u30fc\u30ea\u30f3\u30b0\u30b7\u30e3\u30c3\u30bf\u3092\u4f7f\u7528\u3057\u306a\u3044<br />1: \u30ed\u30fc\u30ea\u30f3\u30b0\u30b7\u30e3\u30c3\u30bf\u3092\u4f7f\u7528\u3059\u308b |   \u25cf/\u25cf   |\r\n| scan_system                             | \u53d6\u8fbc\u3092\u884c\u3046\u30ab\u30e1\u30e9\u306e\u7a2e\u985e\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u30a8\u30ea\u30a2\u30bb\u30f3\u30b5<br />1: \u30e9\u30a4\u30f3\u30bb\u30f3\u30b5 |   \u25cf/\u25cf   |\r\n| serial_no                               | \u30dc\u30fc\u30c9\u306e\u30b7\u30ea\u30a2\u30eb\u756a\u53f7\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                           |   \u25cf/-   |\r\n| serial_read_wait_time                   | \u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u53d7\u4fe1\u5b8c\u4e86\u307e\u3067\u306e\u5f85\u3061\u6642\u9593\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002     |   \u25cf/\u25cf   |\r\n| start_frame_no                          | \u53d6\u8fbc\u3092\u958b\u59cb\u3059\u308b\u30d5\u30ec\u30fc\u30e0\u756a\u53f7(1, 2, 3\u2026)\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002     |   \u25cf/\u25cf   |\r\n| strobe_delay                            | \u30b9\u30c8\u30ed\u30dc\u4fe1\u53f7\u51fa\u529b\u9045\u5ef6\u6642\u9593[usec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002           |   \u25cf/\u25cf   |\r\n| strobe_enable                           | \u30b9\u30c8\u30ed\u30dc\u51fa\u529b\u4fe1\u53f7\u306e\u6709\u52b9\uff0f\u7121\u52b9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u30b9\u30c8\u30ed\u30dc\u7121\u52b9<br />1: \u30b9\u30c8\u30ed\u30dc\u6709\u52b9 |   \u25cf/\u25cf   |\r\n| strobe_pol                              | \u30b9\u30c8\u30ed\u30dc\u4fe1\u53f7\u306e\u51fa\u529b\u6975\u6027\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u8ca0\u6975\u6027(\u521d\u671f\u5024)<br />1: \u6b63\u6975\u6027 |   \u25cf/\u25cf   |\r\n| strobe_time                             | \u30b9\u30c8\u30ed\u30dc\u4fe1\u53f7\u51fa\u529b\u6642\u9593[usec]\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002               |   \u25cf/\u25cf   |\r\n| sync_ch                                 | \u6307\u5b9a\u30c1\u30e3\u30f3\u30cd\u30eb\u306e\u53d6\u8fbc\u3092\u3069\u306ech\u306b\u540c\u671f\u3055\u308c\u308b\u304b\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| sync_lt                                 | CC\u4fe1\u53f7\u306e\u51fa\u529b\u3092SYNCLT\u5165\u529b\u306b\u540c\u671f\u3055\u308c\u308b\u304b\u3069\u3046\u304b\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tag                                     | \u4efb\u610f\u4f7f\u7528\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                     |   \u25cf/\u25cf   |\r\n| tap_arrange                             | \u30ab\u30e1\u30e9\u5165\u529b\u30bf\u30c3\u30d7\u306e\u4e26\u3079\u66ff\u3048\u65b9\u6cd5\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002           |   \u25cf/\u25cf   |\r\n| tap_arrange_x_size                      | \u30ab\u30e1\u30e9\u304c\uff11\u30e9\u30a4\u30f3\u3068\u3057\u3066\u51fa\u529b\u3059\u308b\u7dcf\u753b\u7d20\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002   |   \u25cf/\u25cf   |\r\n| tap_direction1                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap1\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction2                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap2\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction3                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap3\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction4                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap4\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction5                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap5\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction6                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap6\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction7                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap7\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction8                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap8\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction9                          | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap9\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_direction10                         | \u8907\u6570\u306e\u30bf\u30c3\u30d7\u5165\u529b\u3092\u884c\u3046\u6642\u3001Tap10\u306e\u5165\u529b\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| tap_num                                 | \u5165\u529b\u30bf\u30c3\u30d7\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                             |   \u25cf/\u25cf   |\r\n| timeout                                 | grab_start()\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u304b\u3089\u753b\u50cf\u5165\u529b\u304c\u5b8c\u4e86\u3059\u308b\u307e\u3067\u306e\u6642\u9593\u3001\u3082\u3057\u304f\u306fgrab_stop()\u30e1\u30bd\u30c3\u30c9\u306e\u30d5\u30ec\u30fc\u30e0\u5165\u529b\u5f85\u3061\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u6642\u9593(msec\u5358\u4f4d\u306e\u6574\u6570)\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| vertical_remap                          | Y\u65b9\u5411\u7279\u6b8aDMA\u306e\u8a2d\u5b9a\uff0f\u7121\u52b9\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />0: \u7121\u52b9<br />1: VERTICAL REMAP \u6709\u52b9<br />2: DUAL LINE\u6709\u52b9 |   \u25cf/\u25cf   |\r\n| virtual_comport                         | \u4eee\u60f3COM\u30dd\u30fc\u30c8\u756a\u53f7\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                              |   \u25cf/-   |\r\n| width                                   | \u753b\u50cf\u5165\u529b\u30b5\u30a4\u30ba\u306e\u5e45\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                       |   \u25cf/\u25cf   |\r\n| x_delay                                 | \u30ab\u30e1\u30e9\u5165\u529b\u306eX\u65b9\u5411\u9045\u5ef6\u91cf\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                  |   \u25cf/\u25cf   |\r\n| y_delay                                 | \u30ab\u30e1\u30e9\u5165\u529b\u306eY\u65b9\u5411\u9045\u5ef6\u884c\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                |   \u25cf/\u25cf   |\r\n| y_total                                 | \u30ab\u30e1\u30e9\u304b\u3089\u5165\u529b\u3059\u308b\u884c\u6570\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />y_total\u3092\u8a2d\u5b9a\u3059\u308b\u5834\u5408\u306f\u3001\u5fc5\u305aheight\u2192y_total\u306e\u9806\u306b\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 |   \u25cf/\u25cf   |\r\n\r\n\u203b\u8a2d\u5b9a\u5024\u306e\u8a73\u7d30\u306f\u3001\u4e0b\u8a18\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3068AcapLib2\u306e\u8a2d\u5b9aID\u3068\u306e\u5bfe\u5fdc\u8868\u793a\u3092\u53c2\u8003\u306bAcapLib2\u306e\u30de\u30cb\u30e5\u30a2\u30eb\u300cSDK-AcapLib2 Library Manual for Windows(OM15018*).pdf\u300d\u3092\u53c2\u7167\u9858\u3044\u307e\u3059\u3002\r\n\r\n| Properties                              | AcapLib2 ID                             | ini parameter                                    |\r\n| --------------------------------------- | --------------------------------------- | ------------------------------------------------ |\r\n| a_cw_ccw                                | ACL_A_CW_CCW                            | -                                                |\r\n| acaplib2_version                        | -                                       | -                                                |\r\n| alarm_status                            | ACL_ALARM_STATUS                        | -                                                |\r\n| b_cw_ccw                                | ACL_B_CW_CCW                            | -                                                |\r\n| bayer_enable                            | ACL_BAYER_ENABLE                        | USER_BAYER_ENABLE                                |\r\n| bayer_grid                              | ACL_BAYER_GRID                          | USER_BAYER_GRID                                  |\r\n| bayer_input_bit                         | ACL_BAYER_INPUT_BIT                     | USER_BAYER_INPUT_BIT                             |\r\n| bayer_lut_data                          | ACL_BAYER_LUT_DATA                      | -                                                |\r\n| bayer_lut_edit                          | ACL_BAYER_LUT_EDIT                      | -                                                |\r\n| bayer_output_bit                        | ACL_BAYER_OUTPUT_BIT                    | USER_BAYER_OUTPUT_BIT                            |\r\n| board_bit                               | ACL_BOARD_BIT                           | USER_GRABBER_BIT_DEPTH                           |\r\n| board_error                             | ACL_BOARD_ERROR                         | -                                                |\r\n| board_id                                | -                                       | -                                                |\r\n| board_name                              | -                                       | -                                                |\r\n| board_temp                              | ACL_BOARD_TEMP                          | -                                                |\r\n| buffer_zero_fill                        | ACL_BUFFER_ZERO_FILL                    | -                                                |\r\n| camera_bit                              | ACL_CAM_BIT                             | USER_CAMERA_BIT_DEPTH                            |\r\n| camera_state                            | ACL_CAMERA_STATE                        | -                                                |\r\n| cancel_initialize                       | ACL_CANCEL_INITIALIZE                   | USER_CANCEL_INITIALIZE                           |\r\n| capture_flag                            | ACL_CAPTURE_FLAG                        | -                                                |\r\n| cc1_polarity                            | ACL_CC1_LEVEL                           | USER_CL_CC1_POLARITY                             |\r\n| cc2_polarity                            | ACL_CC2_LEVEL                           | USER_CL_CC2_POLARITY                             |\r\n| cc3_polarity                            | ACL_CC3_LEVEL                           | USER_CL_CC3_POLARITY                             |\r\n| cc4_polarity                            | ACL_CC4_LEVEL                           | USER_CL_CC4_POLARITY                             |\r\n| cc_cycle                                | ACL_EXP_CYCLE                           | USER_SW_TRIGGER_CYCLE                            |\r\n| cc_cycle_ex                             | ACL_EXP_CYCLE_EX                        | USER_SW_TRIGGER_CYCLE                            |\r\n| cc_delay                                | ACL_CC_DELAY                            | USER_CC_DELAY                                    |\r\n| cc_enable                               | ACL_EXP_EN                              | USER_SW_TRIGGER_ENABLE                           |\r\n| cc_out_no                               | ACL_EXP_CC_OUT                          | USER_CL_CC_OUT_NO                                |\r\n| cc_polarity                             | ACL_EXP_POL                             | USER_SW_TRIGGER_POLARITY                         |\r\n| cc_stop                                 | ACL_CC_STOP                             | USER_CC_STOP                                     |\r\n| ch                                      | -                                       | -                                                |\r\n| channel_num                             | -                                       | -                                                |\r\n| chatter_separate                        | ACL_EXT_CHATTER_SEPARATE                | USER_EXTERNAL_TRIGGER_CHATTER                    |\r\n| count_cc                                | ACL_COUNT_CC                            | -                                                |\r\n| count_exttrig                           | ACL_COUNT_EXTTRIG                       | -                                                |\r\n| count_fval                              | ACL_COUNT_FVAL                          | -                                                |\r\n| count_lval                              | ACL_COUNT_LVAL                          | -                                                |\r\n| custom                                  | -                                       | -                                                |\r\n| cxp_bdlink_timeout                      | ACL_CXP_BDLINK_TIMEOUT                  | USER_CXP_BDLINK_TIMEOUT                          |\r\n| cxp_bitrate                             | ACL_CXP_BITRATE                         | USER_CXP_PHY_BITRATE                             |\r\n| cxp_camlink_timeout                     | ACL_CXP_CAMLINK_TIMEOUT                 | USER_CXP_CAMLINK_TIMEOUT                         |\r\n| cxp_connection_num                      | ACL_CXP_CONNECTION_NUM                  | USER_CXP_CONNECTION_NUM                          |\r\n| cxp_link_speed                          | ACL_CXP_BITRATE<br />ACL_CXP_LINK_SPEED | USER_CXP_PHY_BITRATE<br />USER_CXP_PHY_LINKSPEED |\r\n| cxp_phy_error_count                     | ACL_CXP_PHY_ERROR_COUNT                 | -                                                |\r\n| data_mask_ex                            | ACL_DATA_MASK_EX                        | USER_DATA_MASK_EX                                |\r\n| data_mask_lower                         | ACL_DATA_MASK_LOWER                     | USER_DATA_MASK_LOWER                             |\r\n| data_mask_upper                         | ACL_DATA_MASK_UPPER                     | USER_DATA_MASK_UPPER                             |\r\n| debug_print_enabled                     | -                                       | -                                                |\r\n| device                                  | -                                       | -                                                |\r\n| dval_enable                             | ACL_DVAL_EN                             | USER_DVAL_SIGNAL_ENABLE                          |\r\n| encoder_abs_count                       | ACL_ENC_ABS_COUNT                       | -                                                |\r\n| encoder_abs_mode                        | ACL_ENC_ABS_MODE                        | -                                                |\r\n| encoder_abs_start                       | ACL_ENC_ABS_START                       | -                                                |\r\n| encoder_agr_count                       | ACL_ENC_AGR_COUNT                       | -                                                |\r\n| encoder_all_count                       | ACL_ENC_RLT_ALL_COUNT                   | -                                                |\r\n| encoder_compare_reg_1                   | ACL_ENC_COMPARE_1                       | USER_ENCODER_COMPARE_REG_1                       |\r\n| encoder_compare_reg_2                   | ACL_ENC_COMPARE_2                       | USER_ENCODER_COMPARE_REG_2                       |\r\n| encoder_count                           | ACL_ENC_RLT_COUNT                       | -                                                |\r\n| encoder_direction                       | ACL_ENC_DIRECTION                       | USER_ENCODER_PULSE                               |\r\n| encoder_enable                          | ACL_ENC_EN                              | USER_ENCODER_ENABLE                              |\r\n| encoder_mode                            | ACL_ENC_MODE                            | USER_ENCODER_MODE                                |\r\n| encoder_phase                           | ACL_ENC_PHASE                           | USER_ENCODER_PHASE                               |\r\n| encoder_rlt_all_count                   | ACL_ENC_RLT_ALL_COUNT                   | -                                                |\r\n| encoder_rlt_count                       | ACL_ENC_RLT_COUNT                       | -                                                |\r\n| encoder_start                           | ACL_ENC_START                           | USER_ENCODER_START                               |\r\n| encoder_z_phase                         | ACL_ENC_ZPHASE_EN                       | USER_ENCODER_Z_PHASE                             |\r\n| exposure                                | ACL_EXPOSURE                            | USER_SW_TRIGGER_WIDTH                            |\r\n| exposure_ex                             | ACL_EXPOSURE_EX                         | USER_SW_TRIGGER_WIDTH                            |\r\n| express_link                            | ACL_EXPRESS_LINK                        | -                                                |\r\n| external_trigger_chatter                | ACL_EXT_CHATTER                         | USER_EXTERNAL_TRIGGER_CHATTER                    |\r\n| external_trigger_chatter<br />_separate | ACL_EXT_CHATTER_SEPARATE                | USER_EXTERNAL_TRIGGER_CHATTER_SEPARATE           |\r\n| external_trigger_delay                  | ACL_EXT_DELAY                           | USER_EXTERNAL_TRIGGER_DELAY                      |\r\n| external_trigger_enable                 | ACL_EXT_EN                              | USER_EXTERNAL_TRIGGER_ENABLE                     |\r\n| external_trigger_mode                   | ACL_EXT_MODE                            | USER_EXTERNAL_TRIGGER_POLARITY                   |\r\n| external_trigger_polarity               | ACL_EXT_POL                             | USER_EXTERNAL_TRIGGER_EDGE                       |\r\n| fan_prm                                 | ACL_FAN_RPM                             | -                                                |\r\n| fifo_full                               | ACL_FIFO_FULL                           | -                                                |\r\n| fpga_temp                               | ACL_FPGA_TEMP                           | -                                                |\r\n| fpga_version                            | ACL_FPGA_VERSION                        | -                                                |\r\n| frame_no                                | ACL_FRAME_NO                            | -                                                |\r\n| freq_a                                  | ACL_FREQ_A                              | -                                                |\r\n| freq_b                                  | ACL_FREQ_B                              | -                                                |\r\n| freq_d                                  | ACL_FREQ_D                              | -                                                |\r\n| freq_e                                  | ACL_FREQ_E                              | -                                                |\r\n| freq_f                                  | ACL_FREQ_F                              | -                                                |\r\n| freq_g                                  | ACL_FREQ_G                              | -                                                |\r\n| freq_h                                  | ACL_FREQ_H                              | -                                                |\r\n| freq_fval                               | ACL_FREQ_FVAL                           | -                                                |\r\n| freq_lval                               | ACL_FREQ_LVAL                           | -                                                |\r\n| freq_opt1                               | ACL_FREQ_OPT1                           | -                                                |\r\n| freq_opt2                               | ACL_FREQ_OPT2                           | -                                                |\r\n| freq_opt3                               | ACL_FREQ_OPT3                           | -                                                |\r\n| freq_opt4                               | ACL_FREQ_OPT4                           | -                                                |\r\n| freq_opt5                               | ACL_FREQ_OPT5                           | -                                                |\r\n| freq_opt6                               | ACL_FREQ_OPT6                           | -                                                |\r\n| freq_opt7                               | ACL_FREQ_OPT7                           | -                                                |\r\n| freq_opt8                               | ACL_FREQ_OPT8                           | -                                                |\r\n| freq_ttl1                               | ACL_FREQ_TTL1                           | -                                                |\r\n| freq_ttl2                               | ACL_FREQ_TTL2                           | -                                                |\r\n| freq_ttl3                               | ACL_FREQ_TTL3                           | -                                                |\r\n| freq_ttl4                               | ACL_FREQ_TTL4                           | -                                                |\r\n| freq_ttl5                               | ACL_FREQ_TTL5                           | -                                                |\r\n| freq_ttl6                               | ACL_FREQ_TTL6                           | -                                                |\r\n| freq_ttl7                               | ACL_FREQ_TTL7                           | -                                                |\r\n| freq_ttl8                               | ACL_FREQ_TTL8                           | -                                                |\r\n| freq_z                                  | ACL_FREQ_Z                              | -                                                |\r\n| gpin_pin_sel                            | ACL_GPIN_PIN_SEL                        | USER_GPIN_SEL                                    |\r\n| gpin_pol                                | ACL_GPIN_POL                            | -                                                |\r\n| gpout_sel                               | ACL_GPOUT_POL                           | USER_GPOUT_POL                                   |\r\n| gpout_pol                               | ACL_GPOUT_SEL                           | USER_GPOUT_SEL                                   |\r\n| handle                                  | -                                       | -                                                |\r\n| height                                  | ACL_Y_SIZE<br />ACL_Y_TOTAL             | USER_Y_SIZE<br />USER_Y_TOTAL_SIZE               |\r\n| infrared_enable                         | ACL_INFRARED_ENABLE                     | USER_INFRARED_ENABLE                             |\r\n| interrupt_line                          | ACL_INTR_LINE                           | USER_DATA_INTERRUT_LINE                          |\r\n| interval_exttrig_1                      | ACL_INTERVAL_EXTTRIG_1                  | -                                                |\r\n| interval_exttrig_2                      | ACL_INTERVAL_EXTTRIG_2                  | -                                                |\r\n| interval_exttrig_3                      | ACL_INTERVAL_EXTTRIG_3                  | -                                                |\r\n| interval_exttrig_4                      | ACL_INTERVAL_EXTTRIG_4                  | -                                                |\r\n| is_grab                                 | -                                       | -                                                |\r\n| is_opened                               | -                                       | -                                                |\r\n| line_no                                 | ACL_LINE_NO                             | -                                                |\r\n| line_reverse                            | ACL_LINE_REVERSE                        | USER_CAMERALINK_LINE_REVERSE                     |\r\n| lval_delay                              | ACL_LVAL_DELAY                          | USER_CAMERALINK_LVAL_DELAY                       |\r\n| lvds_cclk_sel                           | ACL_LVDS_CCLK_SEL                       | USER_LVDS_CCLK_SEL                               |\r\n| lvds_phase_sel                          | ACL_LVDS_PHASE_SEL                      | USER_LVDS_PAHSE_SEL                              |\r\n| lvds_synclt_sel                         | ACL_LVDS_SYNCLT_SEL                     | -                                                |\r\n| mem_num                                 | ACL_MEM_NUM                             | USER_MEMORY_NUM                                  |\r\n| narrow10bit_enable                      | ACL_NARROW10BIT_ENABLE                  | USER_NARROW10BIT_ENABLE                          |\r\n| pix_shift                               | ACL_PIX_SHIFT                           | USER_PIXEL_DATA_SHIFT                            |\r\n| pocl_lite_enable                        | ACL_POCL_LITE_ENABLE                    | USER_POCL_LITE_ENABLE                            |\r\n| port_a_assign                           | ACL_PORT_A_ASSIGN                       | USER_PORT_A_ASSIGN                               |\r\n| port_b_assign                           | ACL_PORT_B_ASSIGN                       | USER_PORT_B_ASSIGN                               |\r\n| port_c_assign                           | ACL_PORT_C_ASSIGN                       | USER_PORT_C_ASSIGN                               |\r\n| port_d_assign                           | ACL_PORT_D_ASSIGN                       | USER_PORT_D_ASSIGN                               |\r\n| port_e_assign                           | ACL_PORT_E_ASSIGN                       | USER_PORT_E_ASSIGN                               |\r\n| port_f_assign                           | ACL_PORT_F_ASSIGN                       | USER_PORT_F_ASSIGN                               |\r\n| port_g_assign                           | ACL_PORT_G_ASSIGN                       | USER_PORT_G_ASSIGN                               |\r\n| port_h_assign                           | ACL_PORT_H_ASSIGN                       | USER_PORT_H_ASSIGN                               |\r\n| port_i_assign                           | ACL_PORT_I_ASSIGN                       | USER_PORT_I_ASSIGN                               |\r\n| port_j_assign                           | ACL_PORT_J_ASSIGN                       | USER_PORT_J_ASSIGN                               |\r\n| power_state                             | ACL_POWER_STATE                         | -                                                |\r\n| power_supply                            | ACL_POWER_SUPPLY                        | -                                                |\r\n| reverse_dma_enable                      | ACL_REVERSE_DMA                         | USER_REVERSE_DMA_ENABLE                          |\r\n| rgb_swap_enable                         | ACL_RGB_SWAP_ENABLE                     | USER_RGB_SWAP_ENABLE                             |\r\n| rolling_shutter                         | ACL_ROLLING_SHUTTER                     | USER_ROLLING_SHUTTER_TRIGGER_ENABLE              |\r\n| scan_system                             | ACL_SCAN_SYSTEM                         | USER_INTERLACE_TYPE                              |\r\n| serial_no                               | -                                       | -                                                |\r\n| serial_read_wait_time                   | -                                       | -                                                |\r\n| start_frame_no                          | ACL_START_FRAME_NO                      | -                                                |\r\n| strobe_delay                            | ACL_STROBE_DELAY                        | USER_STROBE_DELAY_COUNT                          |\r\n| strobe_enable                           | ACL_STROBE_EN                           | USER_STROBE_ENABLE                               |\r\n| strobe_pol                              | ACL_STROBE_POL                          | USER_STROBE_POLALITY                             |\r\n| strobe_time                             | ACL_STROBE_TIME                         | USER_STROBE_TIME_COUNT                           |\r\n| sync_ch                                 | ACL_SYNC_CH                             | USER_SYNC_CH                                     |\r\n| sync_lt                                 | ACL_SYNC_LT                             | USER_SYNC_LT                                     |\r\n| tag                                     | -                                       | -                                                |\r\n| tap_arrange                             | ACL_TAP_ARRANGE                         | USER_CAMERALINK_REARRANGEMENT_ENABLE             |\r\n| tap_arrange_x_size                      | ACL_ARRANGE_XSIZE                       | USER_CAMERALINK_REARRANGEMENT_XSIZE              |\r\n| tap_direction1                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_1                   |\r\n| tap_direction2                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_2                   |\r\n| tap_direction3                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_3                   |\r\n| tap_direction4                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_4                   |\r\n| tap_direction5                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_5                   |\r\n| tap_direction6                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_6                   |\r\n| tap_direction7                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_7                   |\r\n| tap_direction8                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_8                   |\r\n| tap_direction9                          | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_9                   |\r\n| tap_direction10                         | ACL_TAP_DIRECTION                       | USER_CAMERALINK_TAP_DIRECTON_10                  |\r\n| tap_num                                 | ACL_TAP_NUM                             | USER_X_TAPS_PER_CH                               |\r\n| timeout                                 | ACL_TIME_OUT                            | USER_TIMEOUT1                                    |\r\n| vertical_remap                          | ACL_VERTICAL_REMAP                      | USER_VERTICAL_REMAP_ENABLE                       |\r\n| virtual_comport                         | ACL_VIRTUAL_COMPORT                     | -                                                |\r\n| width                                   | ACL_X_SIZE                              | USER_X_SIZE                                      |\r\n| x_delay                                 | ACL_X_DELAY                             | USER_X_FRONT_PORCH                               |\r\n| y_delay                                 | ACL_Y_DELAY                             | USER_Y_FRONT_PORCH                               |\r\n| y_total                                 | ACL_Y_TOTAL                             | USER_Y_TOTAL_SIZE                                |\r\n\r\n\r\n\r\n## Methods\r\n\r\n| Methods                                                      | Descriptoin                                                  | AcapLib2 Function                      |\r\n| ------------------------------------------------------------ | ------------------------------------------------------------ | -------------------------------------- |\r\n| bgr2rgb(image)                                               | \u30ab\u30e9\u30fc\u753b\u50cf\u306e\u3068\u304d\u3001BGR\u304b\u3089RGB\u3078\u4e26\u3073\u3092\u5165\u308c\u66ff\u3048\u307e\u3059\u3002           |                                        |\r\n| count_reset()                                                | \u3059\u3079\u3066\u306e\u30ab\u30a6\u30f3\u30bf\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u307e\u3059\u3002                           |                                        |\r\n| cxp_link_reset()                                             | CoaXPress\u30ab\u30e1\u30e9\u3001\u30dc\u30fc\u30c9\u306b\u5bfe\u3057\u3066\u30ea\u30f3\u30af\u30ea\u30bb\u30c3\u30c8\u3092\u884c\u3044\u307e\u3059\u3002    |                                        |\r\n| dispose()                                                    | \u30af\u30e9\u30b9\u5185\u90e8\u306e\u30ea\u30bd\u30fc\u30b9\u3092\u89e3\u653e\u3057\u307e\u3059\u3002                           |                                        |\r\n| get_acapy_properties_text()                                  | AcaPy\u30af\u30e9\u30b9\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u4e00\u89a7\u304a\u3088\u3073\u8a2d\u5b9a\u5024\u306e\u66f8\u304b\u308c\u305f\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |                                        |\r\n| get_bit_assign_ex()                                          | \u5165\u529b\u753b\u50cf\u4e26\u3079\u66ff\u3048\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                           | AcapGetBitAssignEx                     |\r\n| get_boardInfo()                                              | PC\u306b\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u30dc\u30fc\u30c9\u4e00\u89a7\u306e\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002(static method) |                                        |\r\n| get_camera_category_feature_list(<br />    pCategoryName, nOption) | xml \u30ea\u30b9\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                     | AcapGetCameraCategoryFeatureList       |\r\n| get_camera_feature_info(<br />    pFeatureName, nOption)     | Feature \u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                   | AcapGetCameraFeatureInfo               |\r\n| get_camera_property_list(<br />    pCategoryName, nOption)   | \u30d7\u30ed\u30d1\u30c6\u30a3\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                 | AcapGetCameraPropertyList              |\r\n| get_enable_board_ch_list()                                   | \u63a5\u7d9a\u53ef\u80fd\u306a\u30dc\u30fc\u30c9\u756a\u53f7\u3068Ch\u756a\u53f7\u306e\u30bf\u30d7\u30eb\u306e\u30ea\u30b9\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002(static method) |                                        |\r\n| get_encoder()                                                | \u30a8\u30f3\u30b3\u30fc\u30c0\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               | AcapGetEncoder                         |\r\n| get_encoder_abs_multipoint(<br />    point_no)               | \u6307\u5b9a\u3057\u305f\u30a8\u30f3\u30b3\u30fc\u30c0\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u306e\u30dd\u30a4\u30f3\u30c8\u756a\u53f7\u306e\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |                                        |\r\n| get_external_trigger()                                       | \u5916\u90e8\u30c8\u30ea\u30ac\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                               | AcapGetExternalTrigger                 |\r\n| get_frame_no()                                               | \u73fe\u5728\u306e\u753b\u50cf\u53d6\u5f97\u679a\u6570\uff081,2,3\u30fb\u30fb\u30fb\uff09\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002              | AcapGetFrameNo                         |\r\n| get_gpout()                                                  | \u6c4e\u7528\u51fa\u529b(GPOUT)\u306e\u30ec\u30d9\u30eb\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                        | AcapGetGPOut                           |\r\n| get_image_data(index)                                        | \u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306eIndex\u756a\u53f7\u3092\u6307\u5b9a\u3057\u3066\u3001\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |                                        |\r\n| get_info(value_id[, memnum])                                 | \u8a2d\u5b9aID\u3092\u6307\u5b9a\u3057\u3066\u30dc\u30fc\u30c9\u306e\u8a2d\u5b9a\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                 | AcapGetInfo                            |\r\n| get_last_error([error_reset])                                | \u6700\u5f8c\u306b\u767a\u751f\u3057\u305f\u30a8\u30e9\u30fc\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                       | AcapGetLastErrorCode                   |\r\n| get_last_error_ex(<br />    bErrReset)                       | \u6700\u5f8c\u306b\u767a\u751f\u3057\u305f\u30a8\u30e9\u30fc\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\uff08\u62e1\u5f35\u7248\uff09             | AcapGetLastErrorCodeEx                 |\r\n| get_line_trigger()                                           | \u30e9\u30a4\u30f3\u30c8\u30ea\u30ac\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                             | AcapGetLineTrigger                     |\r\n| get_shutter_trigger()                                        | \u30a8\u30ea\u30a2\u30bb\u30f3\u30b5\u30b7\u30e3\u30c3\u30bf\u30c8\u30ea\u30ac\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002               | AcapGetShutterTrigger                  |\r\n| get_strobe()                                                 | \u30b9\u30c8\u30ed\u30dc\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                 | AcapGetStrobe                          |\r\n| grab_abort()                                                 | \u753b\u50cf\u5165\u529b\u3092\u5f37\u5236\u505c\u6b62\u3057\u307e\u3059\u3002                                   | AcapGrabAbort                          |\r\n| grab_start([input_num])                                      | \u753b\u50cf\u5165\u529b\u679a\u6570\u3092\u6307\u5b9a\u3057\u3001\u753b\u50cf\u5165\u529b\u3092\u958b\u59cb\u3057\u307e\u3059\u3002                 | AcapGrabStart                          |\r\n| grab_stop()                                                  | \u753b\u50cf\u5165\u529b\u3092\u505c\u6b62\u3057\u307e\u3059\u3002                                       | AcapGrabStop                           |\r\n| load_inifile(filename)                                       | \u30dc\u30fc\u30c9\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb(*.ini)\u3092\u8aad\u8fbc\u3001\u30dc\u30fc\u30c9\u306e\u8a2d\u5b9a\u3092\u884c\u3044\u307e\u3059\u3002    | AcapSelectFile                         |\r\n| opt_link_reset()                                             | Opt-C:Link\u30dc\u30fc\u30c9\u306b\u5bfe\u3057\u3066\u30ea\u30f3\u30af\u30ea\u30bb\u30c3\u30c8\u3092\u884c\u3044\u307e\u3059\u3002           |                                        |\r\n| print_last_error()                                           | \u6700\u5f8c\u306b\u767a\u751f\u3057\u305f\u30a8\u30e9\u30fc\u60c5\u5831\u3092\u30b3\u30de\u30f3\u30c9\u30d7\u30ed\u30f3\u30d7\u30c8\u3078\u8868\u793a\u3057\u307e\u3059\u3002   |                                        |\r\n| read([copy, wait_frame])                                     | grab_start()\u5f8c\u3001\u73fe\u5728\u306e\u30d5\u30ec\u30fc\u30e0\u753b\u50cf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002             |                                        |\r\n| read_frames([copy])                                          | \u524d\u56de\u53d6\u5f97\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u306e\u6b21\u304b\u3089\u3001\u73fe\u5728\u306e\u30d5\u30ec\u30fc\u30e0\u307e\u3067\u306e\u753b\u50cf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |                                        |\r\n| reflect_param(<br />    [force_execution])                   | \u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u8a2d\u5b9a\u3057\u305f\u5024\u3092\u30dc\u30fc\u30c9\u3078\u53cd\u6620\u3055\u305b\u307e\u3059\u3002               | AcapReflectParam                       |\r\n| regist_device_alm_callback(<br />device_alm_func)            | DeviceAlarm\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002    |                                        |\r\n| regist_frame_end_callback(<br />frame_end_func)              | FrameEnd\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002       |                                        |\r\n| regist_grab_end_callback(<br />    grab_end_func)            | GrabEnd\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002        |                                        |\r\n| regist_gpin_callback(<br />    gpin_func)                    | GPIN\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002           |                                        |\r\n| regist_overwrite_callback(<br />    overwrite_func)          | Overwrite\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002      |                                        |\r\n| regist_timeout_callback(<br />    timeout_func)              | Timeout\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002        |                                        |\r\n| save_inifile(inifilename)                                    | \u30dc\u30fc\u30c9\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5024\u3092ini\u30d5\u30a1\u30a4\u30eb\u306b\u4fdd\u5b58\u3057\u307e\u3059\u3002          | AcapSelectFile                         |\r\n| serial_close()                                               | \u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u30dd\u30fc\u30c8\u3092\u9589\u3058\u307e\u3059\u3002                               | AcapSerialClose                        |\r\n| serial_get_parameter()                                       | \u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                       | AcapSerialGetParameter                 |\r\n| serial_open(<br />    [baud_rate, data_bit, parity, <br />    stop_bit, flow]) | \u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u3092\u30aa\u30fc\u30d7\u30f3\u3057\u3001\u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 | AcapSerialOpen  AcapSerialSetParameter |\r\n| serial_read(<br />    [asc, <br />    time_out, <br />    buffer_size, <br />    end_str]) | \u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u30b3\u30de\u30f3\u30c9\u3092\u53d7\u4fe1\u3057\u307e\u3059\u3002<br />\u53d7\u4fe1\u30d0\u30c3\u30d5\u30a1\u304c\u7a7a\u306b\u306a\u308b\u307e\u3067\u53d7\u4fe1\u3057\u307e\u3059\u3002 | AcapSerialRead                         |\r\n| serial_write(<br />    write_command<br />    [, asc, start_str, end_str]) | \u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u30b3\u30de\u30f3\u30c9\u3092\u9001\u4fe1\u3057\u307e\u3059\u3002                           | AcapSerialWrite                        |\r\n| set_bit_assign_ex(<br />    bit_assign_info)                 | \u5165\u529b\u753b\u50cf\u4e26\u3079\u66ff\u3048\u8a2d\u5b9a\u3092\u884c\u3044\u307e\u3059\u3002                             | AcapSetBitAssignEx                     |\r\n| set_encoder(<br />    enc_enable, <br />    enc_mode, <br />    enc_start, <br />    enc_phase, <br />    enc_direction, <br />    z_phase_enable, <br />    compare1, <br />    compare2) | \u30a8\u30f3\u30b3\u30fc\u30c0\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                                     | AcapSetEncoder                         |\r\n| set_encoder_abs_multipoint(<br />    point_no, abs_count)    | \u30a8\u30f3\u30b3\u30fc\u30c0\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u306e\u30dd\u30a4\u30f3\u30c8\u756a\u53f7\u3092\u6307\u5b9a\u3057\u3066\u3001\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u5024\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |                                        |\r\n| set_external_trigger( <br />    exp_trg_en, <br />    ext_trg_mode, <br />    ext_trg_dly, <br />    ext_trg_chatter, <br />    timeout) | \u5916\u90e8\u30c8\u30ea\u30ac\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                                     | AcapSetExternalTrigger                 |\r\n| set_gpout(output_level)                                      | \u6c4e\u7528\u51fa\u529b(GPOUT)\u306e\u30ec\u30d9\u30eb\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                        | AcapSetGPOut                           |\r\n| set_info(<br />    value_id, value[, memnum])                | \u30dc\u30fc\u30c9\u3078\u8a2d\u5b9aID\u3092\u6307\u5b9a\u3057\u3066\u5024\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u8a2d\u5b9a\u5024\u304c\u3042\u308b\u5834\u5408\u306f\u8a2d\u5b9a\u3057\u306a\u3044\u3067\u304f\u3060\u3055\u3044\u3002 | AcapSetInfo                            |\r\n| set_line_trigger(<br />    exp_cycle, <br />    exposure, <br />    exp_pol) | \u30e9\u30a4\u30f3\u30c8\u30ea\u30ac\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                                   | AcapSetLineTrigger                     |\r\n| set_power_supply(<br />    wait_time, value)                 | \u30ab\u30e1\u30e9\u30af\u30ed\u30c3\u30af\u78ba\u8a8d\u5f85\u6a5f\u6642\u9593(waite_time)\u3092msec\u3067\u6307\u5b9a\u3057\u3001\u7d66\u96fb\u306eON(1)/OFF(0)\u3092value\u306b\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |                                        |\r\n| set_shutter_trigger(<br />    exp_cycle, <br />    exposure, <br />    exp_pol, <br />    exp_unitt, <br />    cc_sel) | \u30a8\u30ea\u30a2\u30bb\u30f3\u30b5\u30b7\u30e3\u30c3\u30bf\u30c8\u30ea\u30ac\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                     | AcapSetShutterTrigger                  |\r\n| set_strobe(<br />    strobe_en, <br />    strobe_delay, <br />    strobe_time) | \u30b9\u30c8\u30ed\u30dc\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                                       | AcapSetStrobe                          |\r\n| snap([copy])                                                 | \uff11\u30d5\u30ec\u30fc\u30e0\u306e\u53d6\u8fbc\u3092\u884c\u3044\u307e\u3059\u3002                                 |                                        |\r\n| wait_grab_start([timeout])                                   | \u753b\u50cf\u5165\u529b\u958b\u59cb\u3092\u5f85\u3061\u307e\u3059\u3002                                     |                                        |\r\n| wait_frame_end([timeout])                                    | \u73fe\u5728\u306e\u30d5\u30ec\u30fc\u30e0\u306e\u5165\u529b\u5b8c\u4e86\u3092\u5f85\u3061\u307e\u3059\u3002                         |                                        |\r\n| wait_gpin([timeout])                                         | GPIN\u5272\u8fbc\u307f\u3092\u5f85\u3061\u307e\u3059\u3002                                       |                                        |\r\n| wait_grab_end([timeout])                                     | Grab(\u9023\u7d9a\u5165\u529b)\u306e\u5b8c\u4e86\u3092\u5f85\u3061\u307e\u3059\u3002                             |                                        |\r\n\r\n\r\n\r\n------\r\n\r\n### bgr2rgb\u30b9\u30bf\u30c6\u30a3\u30c3\u30af\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ab\u30e9\u30fc\u753b\u50cf\u306e\u3068\u304d\u3001\u30ab\u30e9\u30fc\u30c7\u30fc\u30bf\u306eRGB\u306e\u4e26\u3073\u3092B,G,R\u304b\u3089R,G,B\u3078\u5165\u308c\u66ff\u3048\u307e\u3059\u3002\r\n\u30e2\u30ce\u30af\u30ed\u753b\u50cf\u306e\u3068\u304d\u306f\u3001\u305d\u306e\u307e\u307e\u306e\u753b\u50cf\u304c\u8fd4\u3055\u308c\u307e\u3059\u3002\r\n\r\n```python\r\ndef bgr2rgb(bgr_image : np.ndarray) -> np.ndarray:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b         | \u8aac\u660e                                                  |\r\n| --------- | ---------- | ----------------------------------------------------- |\r\n| bgr_image | np.ndarray | numpy\u306endarray\u5f62\u5f0f\u306eB,G,R\u9806\u306e\u30ab\u30e9\u30fc\u753b\u50cf\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nrgb_image\r\n\r\n| \u540d\u524d      | \u578b         | \u8aac\u660e                                                  |\r\n| --------- | ---------- | ----------------------------------------------------- |\r\n| rgb_image | np.ndarray | numpy\u306endarray\u5f62\u5f0f\u306eR,G,B\u9806\u306e\u30ab\u30e9\u30fc\u753b\u50cf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### count_reset\u30e1\u30bd\u30c3\u30c9\r\n\r\nFVAL/LVAL/\u5916\u90e8\u30c8\u30ea\u30ac/CC \u30ab\u30a6\u30f3\u30c8\u56de\u6570\u53ca\u3073\u3001\u5916\u90e8\u30c8\u30ea\u30ac\u9593\u9694\u30ab\u30a6\u30f3\u30bf1\uff5e4 \u306e\u30ab\u30a6\u30f3\u30bf\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u307e\r\n\u3059\u3002\r\n\r\n```python\r\ndef count_reset(self) -> bool:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### cxp_link_reset\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u5bfe\u8c61\u306e\u30dd\u30fc\u30c8\u306b\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u30ab\u30e1\u30e9\u306b\u5bfe\u3057\u3001\u30ab\u30e1\u30e9\u63a5\u7d9a\u78ba\u7acb(\u518d\u521d\u671f\u5316)\u3092\u884c\u3044\u307e\u3059\u3002\r\n\u203b\u30ab\u30e1\u30e9\u8a2d\u5b9a\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u306b\u623b\u308a\u307e\u3059\u306e\u3067\u3001LinkSpeed \u7b49\u30ab\u30e1\u30e9\u8a2d\u5b9a\u3092\u518d\u5ea6\u5b9f\u65bd\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\r\n\r\n```python\r\ndef cxp_link_reset(self) -> int:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### dispose\u30e1\u30bd\u30c3\u30c9\r\n\r\nAcaPy\u30af\u30e9\u30b9\u5185\u90e8\u306e\u30ea\u30bd\u30fc\u30b9\u3092\u89e3\u653e\u3057\u307e\u3059\u3002\r\n\r\ndispose()\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u65bd\u5f8c\u3001\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3057\u305f\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002\r\n\r\n```python\r\ndef dispose(self):\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### get_acapy_properties_text\u30e1\u30bd\u30c3\u30c9\r\n\r\nAcaPy\u30af\u30e9\u30b9\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u4e00\u89a7\u304a\u3088\u3073\u8a2d\u5b9a\u5024\u306e\u66f8\u304b\u308c\u305f\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef get_acapy_properties_text(self) -> str:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                                                      |\r\n| ---- | ---- | --------------------------------------------------------- |\r\n| ret  | str  | AcaPy\u30af\u30e9\u30b9\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u4e00\u89a7\u304a\u3088\u3073\u8a2d\u5b9a\u5024\u306e\u66f8\u304b\u308c\u305f\u30c6\u30ad\u30b9\u30c8 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_bit_assign_ex\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u5165\u529b\u753b\u50cf\u4e26\u3079\u66ff\u3048\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetBitAssignEx()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_bit_assign_ex(self) -> Tuple[int, acaplib2.BITASSIGNINFO]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, bit_assign_info)\r\n\r\n| \u540d\u524d            | \u578b            | \u8aac\u660e                                   |\r\n| --------------- | ------------- | -------------------------------------- |\r\n| ret             | int           | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0               |\r\n| bit_assign_info | BITASSIGNINFO | \u5165\u529b\u753b\u50cf\u4e26\u3079\u66ff\u3048\u60c5\u5831\u304c\u683c\u7d0d\u3055\u308c\u305f\u69cb\u9020\u4f53 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_boardInfo\u30b9\u30bf\u30c6\u30a3\u30c3\u30af\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u30dc\u30fc\u30c9\u60c5\u5831\u3092ACAPBOARDINFOEX\u69cb\u9020\u4f53\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetBoardInfoEx()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_boardInfo() -> Tuple[int, acaplib2.ACAPBOARDINFOEX]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, board_info)\r\n\r\n| \u540d\u524d       | \u578b              | \u8aac\u660e                                   |\r\n| ---------- | --------------- | -------------------------------------- |\r\n| ret        | int             | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0               |\r\n| board_info | ACAPBOARDINFOEX | \u63a5\u7d9a\u3055\u308c\u305f\u30dc\u30fc\u30c9\u60c5\u5831\u304c\u683c\u7d0d\u3055\u308c\u305f\u69cb\u9020\u4f53 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_camera_category_feature_list\u30e1\u30bd\u30c3\u30c9\r\n\r\nxml\u30ea\u30b9\u30c8\u3092ACL_CAM_FEATURE_INFO\u69cb\u9020\u4f53\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapGetCameraCategoryFeatureList()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_camera_category_feature_list(self, pCategoryName : str, nOption : int) -> Tuple[int, acaplib2.ACL_CAM_FEATURE_INFO]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d          | \u578b   | \u8aac\u660e                                                         |\r\n| ------------- | ---- | ------------------------------------------------------------ |\r\n| pCategoryName | str  | \u53d6\u5f97\u3059\u308b Category/Feature \u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                     |\r\n| nOption       | int  | \u53d6\u5f97\u30ec\u30d9\u30eb\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />0: Beginner  <br />1: Expert <br />2: Guru <br />3: \u5168 FeatureList \u3092\u53d6\u5f97\u3057\u307e\u3059\u3002(Invisible \u3092\u542b\u3080) |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, pList)\r\n\r\n| \u540d\u524d  | \u578b                   | \u8aac\u660e                             |\r\n| ----- | -------------------- | -------------------------------- |\r\n| ret   | int                  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0         |\r\n| pList | ACL_CAM_FEATURE_INFO | \u30ab\u30e1\u30e9\u8a2d\u5b9a\u60c5\u5831\u304c\u683c\u7d0d\u3055\u308c\u305f\u69cb\u9020\u4f53 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_camera_feature_info\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ab\u30e1\u30e9\u306eFeature \u60c5\u5831\u3092ACL_CAM_FEATURE_INFO\u69cb\u9020\u4f53\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetCameraFeatureInfo()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_camera_feature_info(self, pFeatureName : str, nOption : int) -> Tuple[int, acaplib2.ACL_CAM_FEATURE_INFO]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d         | \u578b   | \u8aac\u660e                                                         |\r\n| ------------ | ---- | ------------------------------------------------------------ |\r\n| pFeatureName | str  | \u53d6\u5f97\u3059\u308b Feature\u540d\u306e\u6587\u5b57\u5217\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                     |\r\n| nOption      | int  | \u53d6\u5f97\u30ec\u30d9\u30eb\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />0: Beginner  <br />1: Expert <br />2: Guru <br />3: \u5168 FeatureList \u3092\u53d6\u5f97\u3057\u307e\u3059\u3002(Invisible \u3092\u542b\u3080) |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, pFeatureInfo)\r\n\r\n| \u540d\u524d         | \u578b                   | \u8aac\u660e                                   |\r\n| ------------ | -------------------- | -------------------------------------- |\r\n| ret          | int                  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0               |\r\n| pFeatureInfo | ACL_CAM_FEATURE_INFO | \u30ab\u30e1\u30e9\u306eFeature \u60c5\u5831\u304c\u683c\u7d0d\u3055\u308c\u305f\u69cb\u9020\u4f53 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_camera_property_list\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ab\u30e1\u30e9\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u60c5\u5831\u3092ACL_CAM_PROPERTY_LIST\u69cb\u9020\u4f53\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetCameraPropertyList()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_camera_property_list(self, pCategoryName : str, nOption : int) -> Tuple[int, acaplib2.ACL_CAM_PROPERTY_LIST]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d          | \u578b   | \u8aac\u660e                                              |\r\n| ------------- | ---- | ------------------------------------------------- |\r\n| pCategoryName | str  | \u53d6\u5f97\u3059\u308b Category/Feature\u540d\u306e\u6587\u5b57\u5217\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n| nOption       | int  | \u4e88\u7d04(reserved)                                    |\r\n\r\n ***\u623b\u308a\u5024***\r\n\r\n(ret, pPropList)\r\n\r\n| \u540d\u524d      | \u578b                    | \u8aac\u660e                                   |\r\n| --------- | --------------------- | -------------------------------------- |\r\n| ret       | int                   | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0               |\r\n| pPropList | ACL_CAM_PROPERTY_LIST | \u30ab\u30e1\u30e9\u30d7\u30ed\u30d1\u30c6\u30a3\u60c5\u5831\u304c\u683c\u7d0d\u3055\u308c\u305f\u69cb\u9020\u4f53 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_enable_board_ch_list\u30b9\u30bf\u30c6\u30a3\u30c3\u30af\u30e1\u30bd\u30c3\u30c9\r\n\r\nAcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u5f15\u6570\u306b\u6e21\u3059\u4e8b\u304c\u53ef\u80fd\u306a\u30dc\u30fc\u30c9\u756a\u53f7\u3068Ch\u756a\u53f7\u3001\u30dc\u30fc\u30c9\u540d\u3001\u30dc\u30fc\u30c9\u306e\u30b7\u30ea\u30a2\u30eb\u756a\u53f7\u306e\u30bf\u30d7\u30eb\u306e\u30ea\u30b9\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef get_enable_board_ch_list() -> List[Tuple[int, int, str, int]]:\r\n```\r\n\r\n ***\u623b\u308a\u5024***\r\n\r\n[(board_id, ch, board_name, serial_no)]\r\n\r\n| \u540d\u524d       | \u578b   | \u8aac\u660e                   |\r\n| ---------- | ---- | ---------------------- |\r\n| board_id   | int  | \u30dc\u30fc\u30c9\u756a\u53f7\uff08\u30dc\u30fc\u30c9ID\uff09 |\r\n| ch         | int  | \u30c1\u30e3\u30f3\u30cd\u30eb\u756a\u53f7         |\r\n| board_name | str  | \u30dc\u30fc\u30c9\u540d               |\r\n| serial_no  | int  | \u30dc\u30fc\u30c9\u306e\u30b7\u30ea\u30a2\u30eb\u756a\u53f7   |\r\n\r\n\r\n\r\n------\r\n\r\n### get_encoder\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30a8\u30f3\u30b3\u30fc\u30c0\u8a2d\u5b9a\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetEncoder()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_encoder(self) -> Tuple[int, int, int, int, int, int, int, int, int, int]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, enc_enable, enc_mode, enc_start, enc_phase, enc_direction, z_phase_enable, compare1, compare2, comp2_count)\r\n\r\n| \u540d\u524d           | \u578b   | \u8aac\u660e                                                         |\r\n| -------------- | ---- | ------------------------------------------------------------ |\r\n| ret            | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0                                     |\r\n| enc_enable     | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u4f7f\u7528\u8a2d\u5b9a                                           |\r\n| enc_mode       | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u30e2\u30fc\u30c9                                             |\r\n| enc_start      | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u8d77\u52d5\u65b9\u6cd5                                           |\r\n| enc_phase      | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u30d1\u30eb\u30b9                                             |\r\n| enc_direction  | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u56de\u8ee2\u65b9\u5411                                           |\r\n| z_phase_enable | int  | Z \u76f8\u4f7f\u7528\u8a2d\u5b9a                                                 |\r\n| compare1       | int  | \u6bd4\u8f03\u30ec\u30b8\u30b9\u30bf1(\u9045\u5ef6\u30d1\u30eb\u30b9\u8a2d\u5b9a)                                |\r\n| compare2       | int  | \u6bd4\u8f03\u30ec\u30b8\u30b9\u30bf2(\u9593\u9694\u30d1\u30eb\u30b9\u8a2d\u5b9a)                                |\r\n| comp2_count    | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u30ab\u30a6\u30f3\u30c8\u5024<br />\u76f8\u5bfe\u30ab\u30a6\u30f3\u30c8\u3001\u6709\u52b9\u6642\uff1a\u7dcf\u30ab\u30a6\u30f3\u30c8\u6570<br />\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u3001\u6709\u52b9\u6642\uff1a\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u5024 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_encoder_abs_multipoint\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u30fb\u30de\u30eb\u30c1\u30dd\u30a4\u30f3\u30c8\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef get_encoder_abs_multipoint(self, point_no : int) -> Tuple[int, int]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d     | \u578b   | \u8aac\u660e                                               |\r\n| -------- | ---- | -------------------------------------------------- |\r\n| point_no | int  | \u8a2d\u5b9a\u3059\u308b\u30de\u30eb\u30c1\u30dd\u30a4\u30f3\u30c8\u306e\u756a\u53f7\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002(0\uff5e255) |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, abs_count)\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                           |\r\n| --------- | ---- | ------------------------------ |\r\n| ret       | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0       |\r\n| abs_count | int  | \u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u30fb\u30de\u30eb\u30c1\u30dd\u30a4\u30f3\u30c8\u5024 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_external_trigger\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u5916\u90e8\u30c8\u30ea\u30ac\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetExternalTrigger()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_external_trigger(self) -> Tuple[int, int, int, int, int, int]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, exp_trg_en, ext_trg_mode, ext_trg_dly, ext_trg_chatter, timeout)\r\n\r\n| \u540d\u524d            | \u578b   | \u8aac\u660e                               |\r\n| --------------- | ---- | ---------------------------------- |\r\n| ret             | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0           |\r\n| exp_trg_en      | int  | \u5916\u90e8\u30c8\u30ea\u30ac \u4f7f\u7528\u8a2d\u5b9a                |\r\n| ext_trg_mode    | int  | \u5916\u90e8\u30c8\u30ea\u30ac\u30e2\u30fc\u30c9                   |\r\n| ext_trg_dly     | int  | \u5916\u90e8\u30c8\u30ea\u30ac \u691c\u51fa\u9045\u5ef6\u6642\u9593 (1us \u5358\u4f4d) |\r\n| ext_trg_chatter | int  | \u5916\u90e8\u30c8\u30ea\u30ac \u691c\u51fa\u7121\u52b9\u6642\u9593 (1us \u5358\u4f4d) |\r\n| timeout         | int  | \u691c\u51fa\u5f85\u6a5f\u6642\u9593 (1ms \u5358\u4f4d)            |\r\n\r\n\r\n\r\n------\r\n\r\n### get_frame_no\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u5165\u529b\u30d5\u30ec\u30fc\u30e0\u306e\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetFrameNo()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_frame_no(self) -> Tuple[int, int, int , int]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, frame_no, line, index)\r\n\r\n| \u540d\u524d     | \u578b   | \u8aac\u660e                                                     |\r\n| -------- | ---- | -------------------------------------------------------- |\r\n| ret      | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0                                 |\r\n| frame_no | int  | \u5165\u529b\u304c\u5b8c\u4e86\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                   |\r\n| line     | int  | \u30d5\u30ec\u30fc\u30e0\u5185\u306e\u5165\u529b\u304c\u5b8c\u4e86\u3057\u305f\u30e9\u30a4\u30f3\u6570\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002         |\r\n| index    | int  | \u6700\u5f8c\u306b\u5165\u529b\u304c\u5b8c\u4e86\u3057\u305f\u30e1\u30e2\u30ea\u756a\u53f7\uff081,2,3...\uff09\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_gpout\u30e1\u30bd\u30c3\u30c9\r\n\r\nGPOUT\u306e\u72b6\u614b\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetGPOut()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_gpout(self) -> Tuple[int, int]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, dwOutputLevel)\r\n\r\n| \u540d\u524d          | \u578b   | \u8aac\u660e                                                         |\r\n| ------------- | ---- | ------------------------------------------------------------ |\r\n| ret           | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0                                     |\r\n| dwOutputLevel | int  | GPOUT \u51fa\u529b\u8a2d\u5b9a\u72b6\u614b\u3092\u5bfe\u5fdc\u3059\u308bBit \u3067\u683c\u7d0d\u3057\u307e\u3059\u3002<br/>0\uff1aOFF/1\uff1aON<br/>Bit0\uff1aGPOUT[1]\u30d4\u30f3 (GP_OUT1)<br/>Bit1\uff1aGPOUT[2]\u30d4\u30f3 (GP_OUT2)<br/>\uff1a<br/>Bit7\uff1aGPOUT[8]\u30d4\u30f3 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_image_data\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306eIndex\u756a\u53f7(0, 1, 2...)\u3092\u6307\u5b9a\u3057\u3001\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef get_image_data(self, index : int) -> Union[np.ndarray, None]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d  | \u578b   | \u8aac\u660e                                                  |\r\n| ----- | ---- | ----------------------------------------------------- |\r\n| index | int  | \u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306eIndex\u756a\u53f7(0, 1, 2...)\u3092\u6307\u5b9a\u3057\u30ea\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nimage\r\n\r\n| \u540d\u524d  | \u578b         | \u8aac\u660e                                     |\r\n| ----- | ---------- | ---------------------------------------- |\r\n| image | np.ndarray | \u753b\u50cf\u30c7\u30fc\u30bf\u306fnumpy\u306endarray\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_info\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u8a2d\u5b9aID\u3092\u6307\u5b9a\u3057\u3066\u3001\u8a2d\u5b9a\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetInfo()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_info(self, value_id : int, mem_num : int = 0) -> Tuple[int, int]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d     | \u578b   | \u8aac\u660e                                                         |\r\n| -------- | ---- | ------------------------------------------------------------ |\r\n| value_id | int  | \u8a2d\u5b9aID                                                       |\r\n| mem_num  | int  | value_id\u306e\u5024\u306b\u3088\u308a\u4f7f\u7528\u65b9\u6cd5\u304c\u7570\u306a\u308a\u307e\u3059\u3002<br />\u8a73\u7d30\u306fAcapLib2\u30de\u30cb\u30e5\u30a2\u30eb\u306eAcapGetInfo\u95a2\u6570\u3092\u53c2\u7167\u304f\u3060\u3055\u3044\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, value)\r\n\r\n| \u540d\u524d  | \u578b   | \u8aac\u660e                     |\r\n| ----- | ---- | ------------------------ |\r\n| ret   | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n| value | int  | \u53d6\u5f97\u3057\u305f\u8a2d\u5b9a\u5024           |\r\n\r\n\r\n\r\n------\r\n\r\n### get_last_error\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u6700\u5f8c\u306b\u767a\u751f\u3057\u305f\u30a8\u30e9\u30fc\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetLastErrorCode()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_last_error(self, error_reset : bool = False) -> acaplib2.ACAPERRORINFO:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d        | \u578b   | \u8aac\u660e                                                         |\r\n| ----------- | ---- | ------------------------------------------------------------ |\r\n| error_reset | bool | True: \u30a8\u30e9\u30fc\u60c5\u5831\u3092\u30ea\u30bb\u30c3\u30c8<br />False: \u30a8\u30e9\u30fc\u60c5\u5831\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u306a\u3044 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nerror_info\r\n\r\n| \u540d\u524d       | \u578b                     | \u8aac\u660e                                            |\r\n| ---------- | ---------------------- | ----------------------------------------------- |\r\n| error_info | acaplib2.ACAPERRORINFO | \u30a8\u30e9\u30fc\u306e\u5185\u5bb9\u3092ACAPERRORINFO\u69cb\u9020\u4f53\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_last_error_ex\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u6700\u5f8c\u306b\u767a\u751f\u3057\u305f\u30a8\u30e9\u30fc\u60c5\u5831\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetLastErrorCodeEx()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_last_error_ex(self, bErrReset : bool) -> acaplib2.ACAPERRORINFOEX:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                                         |\r\n| --------- | ---- | ------------------------------------------------------------ |\r\n| bErrReset | bool | True: \u30a8\u30e9\u30fc\u60c5\u5831\u3092\u30ea\u30bb\u30c3\u30c8\u3059\u308b<br />False: \u30a8\u30e9\u30fc\u60c5\u5831\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u306a\u3044 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nerror_info_ex\r\n\r\n| \u540d\u524d          | \u578b              | \u8aac\u660e                                              |\r\n| ------------- | --------------- | ------------------------------------------------- |\r\n| error_info_ex | ACAPERRORINFOEX | \u30a8\u30e9\u30fc\u306e\u5185\u5bb9\u3092ACAPERRORINFOEX\u69cb\u9020\u4f53\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_line_trigger\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30e9\u30a4\u30f3\u30c8\u30ea\u30ac\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetLineTrigger()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_line_trigger(self) -> Tuple[int, int, int, int]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, exp_cycle, exposure, exp_pol)\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                                   |\r\n| --------- | ---- | ------------------------------------------------------ |\r\n| ret       | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0                               |\r\n| exp_cycle | int  | \u9732\u5149\u5468\u671f\u30921\u03bcsec\u5358\u4f4d\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002                      |\r\n| exposure  | int  | \u9732\u5149\u6642\u9593\u30921\u03bcsec\u5358\u4f4d\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002                      |\r\n| exp_pol   | int  | \u51fa\u529b\u8ad6\u7406\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002<br />1:\u3000\u6b63\u8ad6\u7406<br />0:\u3000\u8ca0\u8ad6\u7406 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_shutter_trigger\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b7\u30e3\u30c3\u30bf\u30c8\u30ea\u30ac\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetShutterTrigger()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_shutter_trigger(self) -> Tuple[int, int, int, int, int, int]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, exp_cycle, exposure, exp_pol, exp_unit, cc_sel)\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                    |\r\n| --------- | ---- | --------------------------------------- |\r\n| ret       | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0                |\r\n| exp_cycle | int  | CC\u5468\u671f\u30921\u03bcsec\u5358\u4f4d\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002         |\r\n| exposure  | int  | CC\u51fa\u529b\u5e45\u30921\u03bcsec\u5358\u4f4d\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002       |\r\n| exp_pol   | int  | \u51fa\u529b\u8ad6\u7406\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                  |\r\n| exp_unit  | int  | \u672a\u30b5\u30dd\u30fc\u30c8                              |\r\n| cc_sel    | int  | \u9732\u5149\u4fe1\u53f7\u3092\u51fa\u529b\u3059\u308bCC \u756a\u53f7\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_strobe\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b9\u30c8\u30ed\u30dc\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGetStrobe()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef get_strobe(self) -> Tuple[int, int, int, int]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, strobe_en, strobe_delay, strobe_time)\r\n\r\n| \u540d\u524d         | \u578b   | \u8aac\u660e                                                         |\r\n| ------------ | ---- | ------------------------------------------------------------ |\r\n| ret          | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0                                     |\r\n| strobe_en    | int  | \u30b9\u30c8\u30ed\u30dc\u306e\u6709\u52b9(1)\uff0f\u7121\u52b9(0)\u72b6\u614b\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                 |\r\n| strobe_delay | int  | \u30b9\u30c8\u30ed\u30dc\u30d1\u30eb\u30b9\u304c\u51fa\u529b\u3055\u308c\u308b\u307e\u3067\u306e\u9045\u5ef6\u6642\u9593(1\u03bcsec\u5358\u4f4d)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n| strobe_time  | int  | \u30b9\u30c8\u30ed\u30dc\u3092\u51fa\u529b\u3059\u308b\u6642\u9593(1\u03bcsec\u5358\u4f4d)\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002              |\r\n\r\n\r\n\r\n------\r\n\r\n### grab_abort\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u64ae\u5f71\u4e2d\u306e\u753b\u50cf\uff08\u30d5\u30ec\u30fc\u30e0\uff09\u53d6\u8fbc\u306e\u5b8c\u4e86\u3092\u5f85\u305f\u305a\u306b\u753b\u50cf\u5165\u529b\u3092\u505c\u6b62\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGrabAbort()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef grab_abort(self) -> int:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### grab_start\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u753b\u50cf\u5165\u529b\u3092\u958b\u59cb\u3057\u307e\u3059\u3002\r\n\r\ngrab_start()\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u3057\u305f\u3089\u3001\u5fc5\u305agrab_stop()\u30e1\u30bd\u30c3\u30c9\u3001\u3082\u3057\u304f\u306fgrab_abort()\u30e1\u30bd\u30c3\u30c9\u3067\u753b\u50cf\u5165\u529b\u3092\u505c\u6b62\u3055\u305b\u3066\u304f\u3060\u3055\u3044\u3002\r\n\r\nAcapLib2\u306eAcapGrabStart()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef grab_start(self, input_num : int = 0) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                       |\r\n| --------- | ---- | ------------------------------------------ |\r\n| input_num | int  | 0: \u9023\u7d9a\u5165\u529b<br />1\uff5e0xFFFFFFFF: \u6307\u5b9a\u679a\u5165\u529b |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### grab_stop\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u64ae\u5f71\u4e2d\u306e\u753b\u50cf\uff08\u30d5\u30ec\u30fc\u30e0\uff09\u53d6\u8fbc\u306e\u5b8c\u4e86\u3092\u5f85\u3063\u3066\u304b\u3089\u753b\u50cf\u5165\u529b\u3092\u505c\u6b62\u3057\u307e\u3059\u3002\r\n\r\ngrab_start()\u30e1\u30bd\u30c3\u30c9\u3067\u53d6\u8fbc\u679a\u6570(input_num)\u3092\u6307\u5b9a\u3057\u305f\u3068\u304d\u306f\u3001\u679a\u6570\u5206\u306e\u53d6\u8fbc\u5b8c\u4e86\u3092\u5f85\u3061\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapGrabStop()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef grab_stop(self) -> int:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### load_inifile\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30dc\u30fc\u30c9\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\uff08ini\u30d5\u30a1\u30a4\u30eb\uff09\u3092\u8aad\u8fbc\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSelectFile()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef load_inifile(self, inifilename : str) -> int:\r\n```\r\n\r\n  ***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d        | \u578b   | \u8aac\u660e                                                         |\r\n| ----------- | ---- | ------------------------------------------------------------ |\r\n| inifilename | str  | ini\u30d5\u30a1\u30a4\u30eb\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />ini\u30d5\u30a1\u30a4\u30eb\u306fAcapLib2\u306eini\u30d5\u30a1\u30a4\u30eb\u3068\u540c\u3058\u30d5\u30a1\u30a4\u30eb\u3092\u7528\u3044\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### opt_link_reset\u30e1\u30bd\u30c3\u30c9\r\n\r\nOpt-C:Link \u30dc\u30fc\u30c9\u306b\u5bfe\u3057\u3066\u30ea\u30f3\u30af\u30ea\u30bb\u30c3\u30c8(\u518d\u521d\u671f\u5316)\u3092\u884c\u3044\u307e\u3059\u3002\r\n\r\n```python\r\ndef opt_link_reset(self) -> bool:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### print_last_error\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u6700\u5f8c\u306b\u767a\u751f\u3057\u305f\u30a8\u30e9\u30fc\u60c5\u5831\u3092\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u306b\u8868\u793a\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef print_last_error(self) -> acaplib2.ACAPERRORINFOEX:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nerror_info\r\n\r\n| \u540d\u524d       | \u578b                       | \u8aac\u660e                                              |\r\n| ---------- | ------------------------ | ------------------------------------------------- |\r\n| error_info | acaplib2.ACAPERRORINFOEX | \u30a8\u30e9\u30fc\u306e\u5185\u5bb9\u3092ACAPERRORINFOEX\u69cb\u9020\u4f53\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### read\u30e1\u30bd\u30c3\u30c9\r\n\r\ngrab_start\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u5f8c\u3001grab_start\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u307e\u3067\u306e\u9593\u3067\u5b9f\u884c\u3057\u3001\u73fe\u5728\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u3092\uff11\u30d5\u30ec\u30fc\u30e0\u5206\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef read(self, copy : bool = False, wait_frame : bool = True) -> Tuple[int, Union[np.ndarray, None], int, int]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d       | \u578b   | \u8aac\u660e                                                         |\r\n| ---------- | ---- | ------------------------------------------------------------ |\r\n| copy       | bool | True: \u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u304b\u3089\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u30b3\u30d4\u30fc\u3057\u3066\u53d6\u5f97\u3057\u307e\u3059\u3002<br />False:\u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\u3053\u306e\u5834\u5408\u3001\u753b\u50cf\u30c7\u30fc\u30bf\u304c\u4e0a\u66f8\u304d\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002 |\r\n| wait_frame | bool | True: \uff11\u30d5\u30ec\u30fc\u30e0\u5206\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u53d6\u5f97\u5b8c\u4e86\u3092\u5f85\u3063\u3066\u304b\u3089\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002<br />False:\uff11\u30d5\u30ec\u30fc\u30e0\u5206\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u53d6\u5f97\u5b8c\u4e86\u3092\u5f85\u305f\u305a\u306b\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, frame, frame_no, line)\r\n\r\n| \u540d\u524d     | \u578b         | \u8aac\u660e                                                         |\r\n| -------- | ---------- | ------------------------------------------------------------ |\r\n| ret      | int        | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0                                     |\r\n| frame    | np.ndarray | \u53d6\u5f97\u3057\u305f\u753b\u50cf\u30c7\u30fc\u30bf<br />\u30ab\u30e9\u30fc\u753b\u50cf\u306e\u5834\u5408\u3001\u30c7\u30fc\u30bf\u306e\u4e26\u3073\u306fB, G, R\u3068\u306a\u308a\u307e\u3059\u3002\uff08OpenCV\u3068\u540c\u7b49\uff09 |\r\n| frame_no | int        | grab_start\u304b\u3089\u5165\u529b\u304c\u5b8c\u4e86\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u6570\uff081, 2, 3...\uff09         |\r\n| line     | int        | \u5165\u529b\u304c\u5b8c\u4e86\u3057\u305f\u30e9\u30a4\u30f3\u6570                                       |\r\n\r\n\r\n\r\n------\r\n\r\n### read_frames\u30e1\u30bd\u30c3\u30c9\r\n\r\ngrab_start\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u5f8c\u3001grab_stop\u30e1\u30bd\u30c3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u307e\u3067\u306e\u9593\u3067\u5b9f\u884c\u3057\u3001\u524d\u56de\u53d6\u5f97\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u306e\u6b21\u306e\u30d5\u30ec\u30fc\u30e0\u304b\u3089\u73fe\u5728\u53d6\u5f97\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u307e\u3067\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u30ea\u30b9\u30c8\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n\u30ab\u30e1\u30e9\u306e\u30d5\u30ec\u30fc\u30e0\u30ec\u30fc\u30c8\u304c\u901f\u3044\u5834\u5408\u3001\u53d6\u5f97\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u753b\u50cf\u304c\u4e0a\u66f8\u304d\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002\r\n\u305d\u306e\u5834\u5408\u3001mem_num\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5024\uff08\u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306e\u753b\u50cf\u9762\u6570\uff09\u3092\u5927\u304d\u304f\u3057\u3066\u304f\u3060\u3055\u3044\u3002\r\n\r\n```python\r\ndef read_frames(self, copy : bool = False, wait_frame : bool = True) -> Tuple[int, Union[List[np.ndarray], None], int, int]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d       | \u578b   | \u8aac\u660e                                                         |\r\n| ---------- | ---- | ------------------------------------------------------------ |\r\n| copy       | bool | True: \u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u304b\u3089\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u30b3\u30d4\u30fc\u3057\u3066\u53d6\u5f97\u3057\u307e\u3059\u3002<br />False:\u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n| wait_frame | bool | True: \u73fe\u5728\u306e\u30d5\u30ec\u30fc\u30e0\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u53d6\u5f97\u5b8c\u4e86\u3092\u5f85\u3063\u3066\u304b\u3089\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002<br />False:\u73fe\u5728\u306e\u30d5\u30ec\u30fc\u30e0\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u53d6\u5f97\u5b8c\u4e86\u3092\u5f85\u305f\u305a\u306b\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, frames, count, frame_no)\r\n\r\n| \u540d\u524d     | \u578b         | \u8aac\u660e                                                         |\r\n| -------- | ---------- | ------------------------------------------------------------ |\r\n| ret      | int        | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0<br />\u30c7\u30fc\u30bf\u4e0a\u66f8\u304d\u6642: \u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u304c\u4e0a\u66f8\u304d\u3055\u308c\u305f\u753b\u50cf\u679a\u6570\u3092\u8ca0\u306b\u3057\u305f\u5024 |\r\n| frames   | np.ndarray | \u524d\u56de\u53d6\u5f97\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u306e\u6b21\u306e\u30d5\u30ec\u30fc\u30e0\u304b\u3089\u73fe\u5728\u53d6\u5f97\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u307e\u3067\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u30ea\u30b9\u30c8\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002<br />\u30ab\u30e9\u30fc\u753b\u50cf\u306e\u5834\u5408\u3001\u30c7\u30fc\u30bf\u306e\u4e26\u3073\u306fB, G, R\u3068\u306a\u308a\u307e\u3059\u3002\uff08OpenCV\u3068\u540c\u7b49\uff09 |\r\n| count    | int        | \u524d\u56de\u53d6\u5f97\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u306e\u6b21\u306e\u30d5\u30ec\u30fc\u30e0\u304b\u3089\u73fe\u5728\u53d6\u5f97\u3057\u305f\u30d5\u30ec\u30fc\u30e0\u307e\u3067\u306e\u30d5\u30ec\u30fc\u30e0\u6570 |\r\n| frame_no | int        | grab_start\u304b\u3089\u5165\u529b\u304c\u5b8c\u4e86\u3057\u305f\u7dcf\u30d5\u30ec\u30fc\u30e0\u6570\uff081, 2, 3...\uff09       |\r\n\r\n\r\n\r\n------\r\n\r\n### reflect_param\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u8a2d\u5b9a\u3057\u305f\u5024\u3092\u753b\u50cf\u5165\u529b\u30dc\u30fc\u30c9\u306b\u53cd\u6620\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapReflectParam()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef reflect_param(self, force_execution : bool = False) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d            | \u578b   | \u8aac\u660e                                                         |\r\n| --------------- | ---- | ------------------------------------------------------------ |\r\n| force_execution | bool | True: \u8a2d\u5b9a\u306e\u53cd\u6620\u304c\u4e0d\u8981\u306a\u5834\u5408\u3067\u3082\u8a2d\u5b9a\u306e\u53cd\u6620\u3092\u884c\u3044\u307e\u3059\u3002<br />False:\u8a2d\u5b9a\u306e\u53cd\u6620\u304c\u5fc5\u8981\u306a\u5834\u5408\u306b\u8a2d\u5b9a\u306e\u53cd\u6620\u3092\u884c\u3044\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### regist_device_alm_callback\u30e1\u30bd\u30c3\u30c9\r\n\r\n \u30c7\u30d0\u30a4\u30b9\u30a2\u30e9\u30fc\u30e0\u5272\u308a\u8fbc\u307f(ACL_INT_DEVICE_ALM)\u30a4\u30d9\u30f3\u30c8\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002\r\n\r\n\u767b\u9332\u3057\u305f\u95a2\u6570\u306f\u30b5\u30d6\u30b9\u30ec\u30c3\u30c9\u3067\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002\r\n\r\ndevice_alm_func\u306b **None** \u3092\u6307\u5b9a\u3059\u308b\u3068\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u306e\u767b\u9332\u306f\u89e3\u9664\u3055\u308c\u307e\u3059\u3002\r\n\r\n```python\r\ndef regist_device_alm_callback(self, device_alm_func):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d            | \u578b       | \u8aac\u660e                                                       |\r\n| --------------- | -------- | ---------------------------------------------------------- |\r\n| device_alm_func | Function | ACL_INT_DEVICE_ALM\u30a4\u30d9\u30f3\u30c8\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u30b5\u30f3\u30d7\u30eb***\r\n\r\n```python\r\nimport acapy    # AcaPy\r\n\r\ndef capture_device_alm(capture, alarm_status):\r\n    '''ACL_INT_DEVICE_ALM\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\r\n\r\n    Parameters\r\n    ----------\r\n    capture : AcaPy class\r\n        \u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u5143\u306eAcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\r\n    alarm_status : int\r\n        \u30a2\u30e9\u30fc\u30e0\u306e\u5185\u5bb9  \r\n        BIT3 \u30b5\u30fc\u30de\u30eb\u30b7\u30e3\u30c3\u30c8\u30c0\u30a6\u30f3\u30a2\u30e9\u30fc\u30e0\r\n        BIT2 FAN \u56de\u8ee2\u6570\u30a2\u30e9\u30fc\u30e0\r\n        BIT1 FPGA \u6e29\u5ea6\u30a2\u30e9\u30fc\u30e0\r\n        BIT0 \u57fa\u677f\u5468\u8fba\u6e29\u5ea6\u30a2\u30e9\u30fc\u30e0\r\n    '''\r\n    # DeviceAlarm\u304c\u3042\u3063\u305f\u3068\u304d\u306b\u767a\u751f\r\n    print(f\"[device_alm callback] board_id={capture.board_id}, ch={capture.ch}, alarm_status={alarm_status}\")\r\n\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\r\ncap = acapy.AcaPy()\r\n# DeviceAlarm\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\r\ncap.regist_device_alm_callback(capture_device_alm)\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### regist_frame_end_callback\u30e1\u30bd\u30c3\u30c9\r\n\r\n\uff11\u30d5\u30ec\u30fc\u30e0\u5165\u529b\u5b8c\u4e86\u5272\u308a\u8fbc\u307f(ACL_INT_FRAMEEND)\u30a4\u30d9\u30f3\u30c8\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002\r\n\r\n\u767b\u9332\u3057\u305f\u95a2\u6570\u306f\u30b5\u30d6\u30b9\u30ec\u30c3\u30c9\u3067\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002\r\n\r\nframe_end_func\u306b **None** \u3092\u6307\u5b9a\u3059\u308b\u3068\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u306e\u767b\u9332\u306f\u89e3\u9664\u3055\u308c\u307e\u3059\u3002\r\n\r\n```python\r\ndef regist_frame_end_callback(self, frame_end_func, frame_copy_flag: bool=False):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d            | \u578b       | \u8aac\u660e                                                         |\r\n| --------------- | -------- | ------------------------------------------------------------ |\r\n| frame_end_func  | Function | ACL_INT_FRAMEEND\u30a4\u30d9\u30f3\u30c8\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002     |\r\n| frame_copy_flag | bool     | True: \u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u304b\u3089\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u30b3\u30d4\u30fc\u3057\u3066\u53d6\u5f97\u3057\u307e\u3059\u3002<br />False:\u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\uff08\u521d\u671f\u5024\uff09 |\r\n\r\n***\u30b5\u30f3\u30d7\u30eb***\r\n\r\n```python\r\nimport acapy    # AcaPy\r\n\r\ndef capture_frame_end(capture, frames, count, total_frame_count, error_info):\r\n    '''ACL_INT_FRAMEEND\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\r\n\r\n    Parameters\r\n    ----------\r\n    capture : AcaPy class\r\n        \u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u5143\u306eAcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\r\n    frames : List[ndarray]\r\n        \u524d\u56de\u306e\u6b21\u306e\u30d5\u30ec\u30fc\u30e0\u304b\u3089\u4eca\u56de\u306e\u30d5\u30ec\u30fc\u30e0\u307e\u3067\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u306e\u30ea\u30b9\u30c8\r\n    count : int\r\n        \u30ea\u30b9\u30c8\u306b\u683c\u7d0d\u3055\u308c\u305f\u30d5\u30ec\u30fc\u30e0\u306e\u679a\u6570\r\n    total_frame_count : int\r\n        \u4eca\u56de\u307e\u3067\u53d6\u5f97\u3057\u305f\u5168\u30d5\u30ec\u30fc\u30e0\u679a\u6570\r\n    error_info : int\r\n        \u30a8\u30e9\u30fc\u60c5\u5831\u30021\u306e\u3068\u304d\u30a8\u30e9\u30fc\u306a\u3057\u3001\u8ca0\u306e\u3068\u304d\u4e0a\u66f8\u304d\u3055\u308c\u305f\u30d5\u30ec\u30fc\u30e0\u679a\u6570\r\n    '''\r\n    # \u5404\u30d5\u30ec\u30fc\u30e0\u753b\u50cf\u306e\u53d6\u8fbc\u304c\u5b8c\u4e86\u3057\u305f\u3068\u304d\u306b\u767a\u751f\r\n    # error_info\u306e\u5024\u304c\u8ca0\u306e\u3068\u304d\u306f\u3001\u30d5\u30ec\u30fc\u30e0\u753b\u50cf\u306e\u4e0a\u66f8\u304d\u304c\u767a\u751f\u3057\u3066\u3044\u307e\u3059\u3002\r\n    # \u3000-> AcaPy\u30af\u30e9\u30b9\u306e\u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306e\u9762\u6570(mem_num\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5024)\u3092\u591a\u304f\u3057\u3066\u304f\u3060\u3055\u3044\u3002\r\n    print(f\"[frame_end callback] board_id={capture.board_id}, ch={capture.ch}, FrameNo={total_frame_count}, count={count}, error_info={error_info}\")\r\n\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\r\ncap = acapy.AcaPy()\r\n# FrameEnd\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\r\ncap.regist_frame_end_callback(capture_frame_end)\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### regist_grab_end_callback\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u5165\u529b\u7d42\u4e86\u5272\u308a\u8fbc\u307f(ACL_INT_GRABEND)\u30a4\u30d9\u30f3\u30c8\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002\r\n\r\n\u767b\u9332\u3057\u305f\u95a2\u6570\u306f\u30b5\u30d6\u30b9\u30ec\u30c3\u30c9\u3067\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002\r\n\r\ngrab_end_func\u306b **None** \u3092\u6307\u5b9a\u3059\u308b\u3068\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u306e\u767b\u9332\u306f\u89e3\u9664\u3055\u308c\u307e\u3059\u3002\r\n\r\n```python\r\ndef regist_grab_end_callback(self, grab_end_func):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d          | \u578b       | \u8aac\u660e                                                    |\r\n| ------------- | -------- | ------------------------------------------------------- |\r\n| grab_end_func | Function | ACL_INT_GRABEND\u30a4\u30d9\u30f3\u30c8\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u30b5\u30f3\u30d7\u30eb***\r\n\r\n```python\r\nimport acapy    # AcaPy\r\n\r\ndef capture_grab_end(capture):\r\n    '''ACL_INT_GRABEND\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\r\n\r\n    Parameters\r\n    ----------\r\n    capture : AcaPy class\r\n        \u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u5143\u306eAcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\r\n    '''\r\n    # grab_start()\u30e1\u30bd\u30c3\u30c9\u3067\u679a\u6570\u6307\u5b9a\u5206\u306e\u753b\u50cf\u53d6\u8fbc\u304c\u5b8c\u4e86\u3057\u305f\u3068\u304d\u306b\u767a\u751f\r\n    print(f\"[grab_end callback] board_id={capture.board_id}, ch={capture.ch}\")\r\n\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\r\ncap = acapy.AcaPy()\r\n# GrabEnd\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\r\ncap.regist_grab_end_callback(capture_grab_end)\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### regist_gpin_callback\u30e1\u30bd\u30c3\u30c9\r\n\r\nGPIN \u5272\u308a\u8fbc\u307f (ACL_INT_GPIN)\u30a4\u30d9\u30f3\u30c8\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002\r\n\r\n\u767b\u9332\u3057\u305f\u95a2\u6570\u306f\u30b5\u30d6\u30b9\u30ec\u30c3\u30c9\u3067\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002\r\n\r\ngpin_func\u306b **None** \u3092\u6307\u5b9a\u3059\u308b\u3068\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u306e\u767b\u9332\u306f\u89e3\u9664\u3055\u308c\u307e\u3059\u3002\r\n\r\n```python\r\ndef regist_gpin_callback(self, gpin_func):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b       | \u8aac\u660e                                                 |\r\n| --------- | -------- | ---------------------------------------------------- |\r\n| gpin_func | Function | ACL_INT_GPIN\u30a4\u30d9\u30f3\u30c8\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u30b5\u30f3\u30d7\u30eb***\r\n\r\n```python\r\nimport acapy    # AcaPy\r\n\r\ndef capture_gpin(capture, gpin_polarity):\r\n    '''ACL_INT_GPIN\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\r\n\r\n    Parameters\r\n    ----------\r\n    capture : AcaPy class\r\n        \u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u5143\u306eAcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\r\n    gpin_polarity : int\r\n        GPIN\u306e\u30ec\u30d9\u30eb\r\n    '''\r\n    # GPIN\u306e\u5165\u529b\u304c\u3042\u3063\u305f\u3068\u304d\u306b\u767a\u751f\r\n    print(f\"[gpin callback] board_id={capture.board_id}, ch={capture.ch}, gpin_polarity={gpin_polarity}\")\r\n\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\r\ncap = acapy.AcaPy()\r\n# GPIN\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\r\ncap.regist_gpin_callback(capture_gpin)\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### regist_overwrite_callback\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30d0\u30c3\u30d5\u30a1\u30aa\u30fc\u30d0\u30fc\u30d5\u30ed\u30fc(\u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306e\u30e1\u30e2\u30ea\u304c\uff11\u5468\u4ee5\u4e0a\u3057\u305f\u3053\u3068\u306b\u3088\u308b\u753b\u50cf\u30c7\u30fc\u30bf\u306e\u4e0a\u66f8\u304d)\u30a4\u30d9\u30f3\u30c8\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002\r\n\r\n\u767b\u9332\u3057\u305f\u95a2\u6570\u306f\u30b5\u30d6\u30b9\u30ec\u30c3\u30c9\u3067\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002\r\n\r\noverwrite_func\u306b **None** \u3092\u6307\u5b9a\u3059\u308b\u3068\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u306e\u767b\u9332\u306f\u89e3\u9664\u3055\u308c\u307e\u3059\u3002\r\n\r\n```python\r\ndef regist_overwrite_callback(self, overwrite_func):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d           | \u578b       | \u8aac\u660e                                                   |\r\n| -------------- | -------- | ------------------------------------------------------ |\r\n| overwrite_func | Function | \u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c8\u30a4\u30d9\u30f3\u30c8\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u30b5\u30f3\u30d7\u30eb***\r\n\r\n```python\r\nimport acapy    # AcaPy\r\n\r\ndef capture_overwrite(capture, count, total_frame_count, overwrite_count):\r\n    '''\u30aa\u30fc\u30d0\u30fc\u30e9\u30a4\u30c8\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\r\n\r\n    Parameters\r\n    ----------\r\n    capture : AcaPy class\r\n        \u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u5143\u306eAcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\r\n    count : int\r\n        \u524d\u56de\u304b\u3089\u4eca\u56de\u307e\u3067\u53d6\u5f97\u3057\u305f\u753b\u50cf\u306e\u679a\u6570\r\n    total_frame_count : int\r\n        \u53d6\u8fbc\u958b\u59cb\u304b\u3089\u53d6\u5f97\u3057\u305f\u753b\u50cf\u306e\u7dcf\u679a\u6570\r\n    overwrite_count : int\r\n        \u4e0a\u66f8\u304d\u3055\u308c\u305f\u753b\u50cf\u306e\u679a\u6570\r\n    '''\r\n    # Overwrite(\u753b\u50cf\u30c7\u30fc\u30bf\u306e\u4e0a\u66f8\u304d)\u304c\u767a\u751f\u3057\u305f\u3068\u304d\u306b\u767a\u751f\r\n    print(f\"[overwrite callback] board_id={capture.board_id}, ch={capture.ch}\")\r\n\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\r\ncap = acapy.AcaPy()\r\n# Overwrite(\u753b\u50cf\u30c7\u30fc\u30bf\u306e\u4e0a\u66f8\u304d\u767a\u751f)\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\r\ncap.regist_overwrite_callback(capture_overwrite)\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### regist_timeout_callback\u30e1\u30bd\u30c3\u30c9\r\n\r\n \u30bf\u30a4\u30e0\u30a2\u30a6\u30c8(ACL_INT_TIMEOUT)\u30a4\u30d9\u30f3\u30c8\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\u3057\u307e\u3059\u3002\r\n\r\n\u767b\u9332\u3057\u305f\u95a2\u6570\u306f\u30b5\u30d6\u30b9\u30ec\u30c3\u30c9\u3067\u547c\u3073\u51fa\u3055\u308c\u307e\u3059\u3002\r\n\r\ntimeout_func\u306b **None** \u3092\u6307\u5b9a\u3059\u308b\u3068\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u306e\u767b\u9332\u306f\u89e3\u9664\u3055\u308c\u307e\u3059\u3002\r\n\r\n```python\r\ndef regist_timeout_callback(self, timeout_func):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d         | \u578b       | \u8aac\u660e                                                    |\r\n| ------------ | -------- | ------------------------------------------------------- |\r\n| timeout_func | Function | ACL_INT_TIMEOUT\u30a4\u30d9\u30f3\u30c8\u3067\u547c\u3073\u51fa\u3055\u308c\u308b\u95a2\u6570\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u30b5\u30f3\u30d7\u30eb***\r\n\r\n```python\r\nimport acapy    # AcaPy\r\n\r\ndef capture_timeout(capture):\r\n    '''ACL_INT_TIMEOUT\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\r\n\r\n    Parameters\r\n    ----------\r\n    capture : AcaPy class\r\n        \u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u5143\u306eAcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\r\n    '''\r\n    # Timeout\u304c\u3042\u3063\u305f\u3068\u304d\u306b\u767a\u751f\r\n    print(f\"[timeout callback] board_id={capture.board_id}, ch={capture.ch}\")\r\n\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\r\ncap = acapy.AcaPy()\r\n# Timeout\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3092\u767b\u9332\r\ncap.regist_timeout_callback(capture_timeout)\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### save_inifile\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30dc\u30fc\u30c9\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5024\u3092ini\u30d5\u30a1\u30a4\u30eb\u306b\u4fdd\u5b58\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSelectFile()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef save_inifile(self, inifilename : str) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d        | \u578b   | \u8aac\u660e                              |\r\n| ----------- | ---- | --------------------------------- |\r\n| inifilename | str  | \u4fdd\u5b58\u3059\u308bini\u30d5\u30a1\u30a4\u30eb\u306e\u30d5\u30a1\u30a4\u30eb\u30d1\u30b9 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### serial_close\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u30dd\u30fc\u30c8\u3092\u30af\u30ed\u30fc\u30ba\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSerialClose()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef serial_close(self) -> int:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### serial_get_parameter\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\nserial_open()\u30e1\u30bd\u30c3\u30c9\u306b\u3066\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u3092\u30aa\u30fc\u30d7\u30f3\u5f8c\u306b\u884c\u3063\u3066\u304f\u3060\u3055\u3044\u3002\r\n\r\nAcapLib2\u306eAcapSerialGetParameter()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef serial_get_parameter(self) -> Tuple[int, int, int, int, int, int]:\r\n```\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, baud_rate, data_bit, parity, stop_bit, flow)\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                               |\r\n| --------- | ---- | ---------------------------------- |\r\n| ret       | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0           |\r\n| baud_rate | int  | \u30dc\u30fc\u30ec\u30fc\u30c8\u3092\u4ee5\u4e0b\u306e\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n| data_bit  | int  | \u30c7\u30fc\u30bf\u30d3\u30c3\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002         |\r\n| parity    | int  | \u30d1\u30ea\u30c6\u30a3\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002             |\r\n| stop_bit  | int  | \u30b9\u30c8\u30c3\u30d7\u30d3\u30c3\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002       |\r\n| flow      | int  | \u30d5\u30ed\u30fc\u5236\u5fa1\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002           |\r\n\r\n\r\n\r\n------\r\n\r\n### serial_open\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u30dd\u30fc\u30c8\u3092\u30aa\u30fc\u30d7\u30f3\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSerialOpen()\u95a2\u6570\u3001AcapSerialSetParameter()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef serial_open(self, baud_rate : int = 9600, data_bit : int = 8, parity : int = 0, stop_bit : int = 0, flow : int = 0) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                                         |\r\n| --------- | ---- | ------------------------------------------------------------ |\r\n| baud_rate | int  | \u30dc\u30fc\u30ec\u30fc\u30c8\u3092\u4ee5\u4e0b\u306e\u5024\u306e\u4e2d\u304b\u3089\u8a2d\u5b9a\u3057\u307e\u3059\u3002<br />9600, 19200, 38400, 57600, 115200 |\r\n| data_bit  | int  | \u30c7\u30fc\u30bf\u30d3\u30c3\u30c8\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002\uff08\u73fe\u5728\u30018 \u306e\u307f\u8a2d\u5b9a\u53ef\uff09             |\r\n| parity    | int  | \u30d1\u30ea\u30c6\u30a3\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002\uff08\u73fe\u5728\u3001\u300c0 :\u306a\u3057\u300d \u306e\u307f\u8a2d\u5b9a\u53ef\uff09       |\r\n| stop_bit  | int  | \u30b9\u30c8\u30c3\u30d7\u30d3\u30c3\u30c8\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002\uff08\u73fe\u5728\u3001\u300c0: 1bit\u300d \u306e\u307f\u8a2d\u5b9a\u53ef\uff09 |\r\n| flow      | int  | \u30d5\u30ed\u30fc\u5236\u5fa1\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002\uff08\u73fe\u5728\u3001\u300c0 :\u306a\u3057\u300d \u306e\u307f\u8a2d\u5b9a\u53ef\uff09     |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### serial_read\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u30b3\u30de\u30f3\u30c9\u306e\u53d7\u4fe1\u3092\u884c\u3044\u307e\u3059\u3002\r\n\u53d7\u4fe1\u306f\u30c7\u30fc\u30bf\u304c\u7a7a\u306b\u306a\u308b\u304b\u3001stop_bit\u3001\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u306b\u306a\u308b\u307e\u3067\u884c\u308f\u308c\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSerialRead()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef serial_read(self, asc : bool = True, time_out : int = 100, buffer_size : int = 511, end_str : Union[str, None] = None) -> Tuple[int, str, int]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d        | \u578b   | \u8aac\u660e                                                         |\r\n| ----------- | ---- | ------------------------------------------------------------ |\r\n| asc         | bool | \u30b7\u30ea\u30a2\u30eb\u306b\u8aad\u8fbc\u3080(\u53d7\u4fe1)\u6587\u5b57\u306e\u30b3\u30fc\u30c9\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />False: 16 \u9032\u6570(HEX)\u8868\u8a18<br />True: ASCII |\r\n| time_out    | int  | \u53d7\u4fe1\u3057\u305f\u30c7\u30fc\u30bf\u30d0\u30c3\u30d5\u30a1\u306e\u6700\u5f8c\u5c3e\u304c\u3001\u7d42\u7aef\u6587\u5b57\u5217\u3068\u4e00\u81f4\u3059\u308b\u307e\u3067\u306e\u30bf\u30a4 \u30e0\u30a2\u30a6\u30c8\u6642\u9593[mSec]\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n| buffer_size | int  | \u30b3\u30de\u30f3\u30c9\u6587\u5b57\u5217\u683c\u7d0d\u30d0\u30c3\u30d5\u30a1\u306e\u30b5\u30a4\u30ba\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002             |\r\n| end_str     | int  | \u30b3\u30de\u30f3\u30c9\u306e\u7d42\u7aef\u6587\u5b57\u5217\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                           |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, read_command, read_bytes)\r\n\r\n| \u540d\u524d         | \u578b   | \u8aac\u660e                     |\r\n| ------------ | ---- | ------------------------ |\r\n| ret          | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n| read_command | str  | \u53d7\u4fe1\u3057\u305f\u6587\u5b57\u5217           |\r\n| read_bytes   | int  | \u53d7\u4fe1\u3057\u305f\u30c7\u30fc\u30bf\u306e\u30d0\u30a4\u30c8\u6570 |\r\n\r\n\r\n\r\n------\r\n\r\n### serial_write\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u6307\u5b9a\u3057\u305f\u6587\u5b57\u30b3\u30fc\u30c9\u3067\u30b3\u30de\u30f3\u30c9\u306e\u66f8\u8fbc\u307f(\u9001\u4fe1)\u3092\u884c\u3044\u307e\u3059\u3002\r\nAcapLib2\u306eAcapSerialWrite()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef serial_write(self, write_command : str, asc : bool = True, start_str : str = \u201d\u201d, end_str : str = \"\\r\") -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d          | \u578b   | \u8aac\u660e                                                         |\r\n| ------------- | ---- | ------------------------------------------------------------ |\r\n| write_command | str  | \u30b7\u30ea\u30a2\u30eb\u306b\u9001\u4fe1\u3059\u308b\u30b3\u30de\u30f3\u30c9                                   |\r\n| asc           | bool | \u30b7\u30ea\u30a2\u30eb\u306b\u66f8\u8fbc\u3080(\u9001\u4fe1)\u6587\u5b57\u306e\u30b3\u30fc\u30c9\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />False: 16 \u9032\u6570(HEX)\u8868\u8a18<br />True: ASCII |\r\n| start_str     | str  | asc \u304cTRUE \u306e\u5834\u5408\u306b\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002<br/>\u30b3\u30de\u30f3\u30c9\u306e\u958b\u59cb\u6587\u5b57\u5217(ASCII \u8868\u8a18) |\r\n| end_str       | str  | asc \u304cTRUE \u306e\u5834\u5408\u306b\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002<br/>\u30b3\u30de\u30f3\u30c9\u306e\u7d42\u7aef\u6587\u5b57\u5217(ASCII \u8868\u8a18) |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_bit_assign_ex\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSetBitAssignEx()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef set_bit_assign_ex(self, bit_assign_info : acaplib2.BITASSIGNINFO) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d            | \u578b                     | \u8aac\u660e                                       |\r\n| --------------- | ---------------------- | ------------------------------------------ |\r\n| bit_assign_info | acaplib2.BITASSIGNINFO | \u4e26\u3079\u66ff\u3048\u60c5\u5831\u3092\u683c\u7d0d\u3059\u308b\u69cb\u9020\u4f53\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_encoder\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30a8\u30f3\u30b3\u30fc\u30c0\u306e\u8a2d\u5b9a\u3092\u884c\u3044\u307e\u3059\u3002\r\nAcapLib2\u306eAcapSetEncoder()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef set_encoder(self, enc_enable : int, enc_mode : int, enc_start : int, enc_phase : int, enc_direction : int, z_phase_enable : int, compare1 : int, compare2 : int) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d           | \u578b   | \u8aac\u660e                                                         |\r\n| -------------- | ---- | ------------------------------------------------------------ |\r\n| enc_enable     | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u4f7f\u7528\u8a2d\u5b9a<br />0: \u7121\u52b9<br />1: \u6709\u52b9\uff08\u76f8\u5bfe\u30ab\u30a6\u30f3\u30c8\uff09<br />2: \u6709\u52b9\uff08\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\uff09 |\r\n| enc_mode       | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u30e2\u30fc\u30c9<br />0: \u30a8\u30f3\u30b3\u30fc\u30c0\u30b9\u30ad\u30e3\u30f3\u30e2\u30fc\u30c9<br />1: \u30a8\u30f3\u30b3\u30fc\u30c0\u30e9\u30a4\u30f3\u9078\u629e\u30e2\u30fc\u30c9 |\r\n| enc_start      | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u306e\u8d77\u52d5\u65b9\u6cd5<br/>0: \u30a8\u30f3\u30b3\u30fc\u30c0\u3092CPU \u3067\u8d77\u52d5<br />1: \u30a8\u30f3\u30b3\u30fc\u30c0\u3092\u5916\u90e8\u30c8\u30ea\u30ac\u3067\u8d77\u52d5<br />2: \u30a8\u30f3\u30b3\u30fc\u30c0\u3092CPU \u3067\u8d77\u52d5\u3057\u3066\u3001\u5916\u90e8\u30c8\u30ea\u30ac\u3092\u4e00\u81f4\u30d1\u30eb\u30b9\u3068\u3057\u3066\u4f7f\u7528 |\r\n| enc_phase      | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u30d1\u30eb\u30b9<br/>0: AB\u76f8<br/>1: A\u76f8                      |\r\n| enc_direction  | int  | \u30a8\u30f3\u30b3\u30fc\u30c0\u56de\u8ee2\u65b9\u5411<br />0: CW<br/>1: CCW                     |\r\n| z_phase_enable | int  | Z \u76f8\u4f7f\u7528\u8a2d\u5b9a<br />0: \u4f7f\u7528\u3057\u306a\u3044<br />1: \u4f7f\u7528\u3059\u308b             |\r\n| compare1       | int  | \u6bd4\u8f03\u30ec\u30b8\u30b9\u30bf1(\u9045\u5ef6\u30d1\u30eb\u30b9\u8a2d\u5b9a)<br />0 \uff5e 4,294,967,295        |\r\n| compare2       | int  | \u6bd4\u8f03\u30ec\u30b8\u30b9\u30bf2(\u9593\u9694\u30d1\u30eb\u30b9\u8a2d\u5b9a)<br />1 \uff5e 4,294,967,295        |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_encoder_abs_multipoint\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u30de\u30eb\u30c1\u30dd\u30a4\u30f3\u30c8\u306e\u5024\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef set_encoder_abs_multipoint(self, point_no : int, abs_count : int) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                                         |\r\n| --------- | ---- | ------------------------------------------------------------ |\r\n| point_no  | int  | \u8a2d\u5b9a\u3059\u308b\u30de\u30eb\u30c1\u30dd\u30a4\u30f3\u30c8\u306e\u756a\u53f7\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002(0\uff5e255)           |\r\n| abs_count | int  | \u7d76\u5bfe\u30ab\u30a6\u30f3\u30c8\u30fb\u30de\u30eb\u30c1\u30dd\u30a4\u30f3\u30c8\u5024\u306e\u8a2d\u5b9a\u3092\u884c\u3044\u307e\u3059\u3002<br />-2147483648 \uff5e 2147483647 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_external_trigger\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u5916\u90e8\u30c8\u30ea\u30ac\u306e\u7a2e\u5225\u3001\u691c\u51fa\u65b9\u6cd5\u306a\u3069\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\nAcapLib2\u306eAcapSetExternalTrigger()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef set_external_trigger(self, exp_trg_en : int, ext_trg_mode : int, ext_trg_dly : int, ext_trg_chatter : int, timeout : int) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d            | \u578b   | \u8aac\u660e                                                         |\r\n| --------------- | ---- | ------------------------------------------------------------ |\r\n| exp_trg_en      | int  | \u5916\u90e8\u30c8\u30ea\u30ac\u3068\u3057\u3066\u4f7f\u7528\u3059\u308b\u4fe1\u53f7\u306e\u9078\u629e<br />0 : \u7121\u52b9<br/>1 : TTL \u30c8\u30ea\u30ac<br/>2 : \u5dee\u52d5\u30c8\u30ea\u30ac(\u30a8\u30f3\u30b3\u30fc\u30c0\u3068\u5171\u7528)<br/>3 : \u65b0\u898f\u5dee\u52d5\u30c8\u30ea\u30ac<br/>4 : OPT \u30c8\u30ea\u30ac |\r\n| ext_trg_mode    | int  | \u5916\u90e8\u30c8\u30ea\u30ac\u30e2\u30fc\u30c9<br />0 : \u5916\u90e8\u30c8\u30ea\u30ac1 \u56de\u3067CC \u304c1 \u56de\u51fa\u529b\u3059\u308b\u30e2\u30fc\u30c9(\u9023\u7d9a\u5916\u90e8\u30c8\u30ea\u30ac\u30e2\u30fc\u30c9)<br/>1 : \u5916\u90e8\u30c8\u30ea\u30ac1 \u56de\u3067CC \u304c\u5468\u671f\u51fa\u529b\u3059\u308b\u30e2\u30fc\u30c9(\u5358\u767a\u5916\u90e8\u30c8\u30ea\u30ac\u30e2\u30fc\u30c9) |\r\n| ext_trg_dly     | int  | \u5916\u90e8\u30c8\u30ea\u30ac \u691c\u51fa\u9045\u5ef6\u6642\u9593 (1us \u5358\u4f4d)                           |\r\n| ext_trg_chatter | int  | \u5916\u90e8\u30c8\u30ea\u30ac \u691c\u51fa\u7121\u52b9\u6642\u9593 (1us \u5358\u4f4d)                           |\r\n| timeout         | int  | \u691c\u51fa\u5f85\u6a5f\u6642\u9593 (1ms \u5358\u4f4d)<br />1 \uff5e 4,294,967,295              |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_gpout\u30e1\u30bd\u30c3\u30c9\r\n\r\nGPOUT \u30d4\u30f3\u306e\u51fa\u529b\u3092\u5236\u5fa1\u3057\u307e\u3059\u3002\r\nAcapLib2\u306eAcapSetGPOut()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\n def set_gpout(self, output_level : int) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d         | \u578b   | \u8aac\u660e                                                         |\r\n| ------------ | ---- | ------------------------------------------------------------ |\r\n| output_level | int  | \u5bfe\u5fdc\u3059\u308bBit \u306eGPOUT \u30d4\u30f3\u3092ON(High)/OFF(Low)\u3057\u307e\u3059\u3002<br />0\uff1aOFF/1\uff1aON<br/>Bit0\uff1aGPOUT[1]\u30d4\u30f3 (GP_OUT1)<br/>Bit1\uff1aGPOUT[2]\u30d4\u30f3 (GP_OUT2)<br/>\uff1a<br/>Bit7\uff1aGPOUT[8]\u30d4\u30f3 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_info\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u8a2d\u5b9aID\u3092\u6307\u5b9a\u3057\u3066\u3001\u8a2d\u5b9a\u5024\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\n\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u540c\u69d8\u306e\u8a2d\u5b9a\u5024\u304c\u3042\u308b\u5834\u5408\u306f\u8a2d\u5b9a\u3057\u306a\u3044\u3067\u304f\u3060\u3055\u3044\u3002\r\n\r\nAcapLib2\u306eAcapSetInfo()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef set_info(self, value_id : int, value : int, mem_num : int = -1) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d     | \u578b   | \u8aac\u660e                                                         |\r\n| -------- | ---- | ------------------------------------------------------------ |\r\n| value_id | int  | \u8a2d\u5b9aID                                                       |\r\n| value    | int  | \u8a2d\u5b9a\u5024                                                       |\r\n| mem_num  | int  | value_id\u306e\u5024\u306b\u3088\u308a\u4f7f\u7528\u65b9\u6cd5\u304c\u7570\u306a\u308a\u307e\u3059\u3002<br />\u8a73\u7d30\u306fAcapLib2\u30de\u30cb\u30e5\u30a2\u30eb\u306eAcapSetInfo\u95a2\u6570\u3092\u53c2\u7167\u304f\u3060\u3055\u3044\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_line_trigger\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30e9\u30a4\u30f3\u30bb\u30f3\u30b5\u3078\u51fa\u529b\u3059\u308bCC \u4fe1\u53f7\u306e\u5468\u671f\u30fb\u5e45\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\nAcapLib2\u306eAcapSetLineTrigger()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef set_line_trigger(self, exp_cycle : int, exposure : int, exp_pol : int) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                                         |\r\n| --------- | ---- | ------------------------------------------------------------ |\r\n| exp_cycle | int  | CC \u51fa\u529b\u5468\u671f (1us \u5358\u4f4d) \u203bCoaXPress \u306e\u5834\u5408\u306f\u30c8\u30ea\u30ac\u30d1\u30b1\u30c3\u30c8\u3067\u3059\u3002<br />0 \uff5e 4,294,967,295 |\r\n| exposure  | int  | CC \u51fa\u529b\u5e45 (1us \u5358\u4f4d)<br />0 \uff5e 4,294,967,295                 |\r\n| exp_pol   | int  | \u51fa\u529b\u8ad6\u7406<br />0 : \u8ca0\u8ad6\u7406<br/>1 : \u6b63\u8ad6\u7406                      |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_power_supply\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ab\u30e1\u30e9\u3078\u306e\u96fb\u6e90\u4f9b\u7d66\u3092\u5236\u5fa1\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef set_power_supply(self, value : int, wait_time : int = 6000) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                |\r\n| --------- | ---- | ----------------------------------- |\r\n| value     | int  | \u96fb\u6e90\u306eON/OFF<br />0: OFF<br />1: ON |\r\n| wait_time | int  | \u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u6642\u9593\u3092ms\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002  |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_shutter_trigger\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30a8\u30ea\u30a2\u30bb\u30f3\u30b5\u30b7\u30e3\u30c3\u30bf\u30c8\u30ea\u30ac\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSetShutterTrigger()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef set_shutter_trigger(self, exp_cycle : int, exposure : int, exp_pol : int, exp_unit : int, cc_sel : int) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d      | \u578b   | \u8aac\u660e                                                    |\r\n| --------- | ---- | ------------------------------------------------------- |\r\n| exp_cycle | int  | CC \u51fa\u529b\u5468\u671f (1us \u5358\u4f4d)<br />0 \uff5e 429,496,729            |\r\n| exposure  | int  | CC \u51fa\u529b\u5e45 (1us \u5358\u4f4d)<br />0 \uff5e 429,496,729              |\r\n| exp_pol   | int  | \u51fa\u529b\u8ad6\u7406<br />0 : \u8ca0\u8ad6\u7406<br/>1 : \u6b63\u8ad6\u7406                 |\r\n| exp_unit  | int  | \u672a\u30b5\u30dd\u30fc\u30c8                                              |\r\n| cc_sel    | int  | \u51fa\u529b\u3059\u308b\u756a\u53f7<br />1 : CC1 / 2 : CC2 / 3 : CC3 / 4 : CC4 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### set_strobe\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b9\u30c8\u30ed\u30dc\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSetStrobe()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef set_strobe(self, strobe_en : int, strobe_delay : int, strobe_time : int) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d         | \u578b   | \u8aac\u660e                                                         |\r\n| ------------ | ---- | ------------------------------------------------------------ |\r\n| strobe_en    | int  | \u30b9\u30c8\u30ed\u30dc \u4f7f\u7528\u8a2d\u5b9a<br />0 : \u7121\u52b9 / 1 : \u6709\u52b9                   |\r\n| strobe_delay | int  | \u30b9\u30c8\u30ed\u30dc\u30d1\u30eb\u30b9\u304c\u51fa\u529b\u3055\u308c\u308b\u307e\u3067\u306e\u9045\u5ef6\u6642\u9593 (1us \u5358\u4f4d)<br />0 \uff5e 65,535 |\r\n| strobe_time  | int  | \u30b9\u30c8\u30ed\u30dc\u30d1\u30eb\u30b9\u3092\u51fa\u529b\u3059\u308b\u6642\u9593 (1us \u5358\u4f4d)<br />0 \uff5e 65,535     |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### snap\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u753b\u50cf\u3092\uff11\u679a\u53d6\u8fbc\u307f\u307e\u3059\u3002\r\n\r\n\u9ad8\u901f\u306b\u9023\u7d9a\u53d6\u8fbc\u3059\u308b\u5834\u5408\u306f\u3001grab\u3092\u304a\u4f7f\u3044\u4e0b\u3055\u3044\u3002\uff08\u53c2\u7167\uff1a[Snap sample](#Snap-sample)\uff09\r\n\r\nregist_frame_end_callback()\u30e1\u30bd\u30c3\u30c9\u306b\u3088\u308a\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u304c\u767b\u9332\u3055\u308c\u3066\u3044\u308b\u5834\u5408\u3001\u623b\u308a\u5024\u3067\u53d6\u5f97\u3057\u305f\u753b\u50cf\u30c7\u30fc\u30bf(frame)\u306f**None**\u306b\u306a\u308b\u305f\u3081\u3001\u767b\u9332\u3057\u305f\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u5185\u306b\u3066\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3066\u304f\u3060\u3055\u3044\u3002\r\n\r\n```python\r\ndef snap(self, copy : bool = False) -> Tuple[int, Union[np.ndarray, None]]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                                                         |\r\n| ---- | ---- | ------------------------------------------------------------ |\r\n| copy | bool | True: \u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u304b\u3089\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u30b3\u30d4\u30fc\u3057\u3066\u53d6\u5f97\u3057\u307e\u3059\u3002<br/>False:\u30ea\u30f3\u30b0\u30d0\u30c3\u30d5\u30a1\u306e\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\u3053\u306e\u5834\u5408\u3001\u753b\u50cf\u30c7\u30fc<br/>\u30bf\u304c\u4e0a\u66f8\u304d\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, frame)\r\n\r\n| \u540d\u524d  | \u578b         | \u8aac\u660e                                                         |\r\n| ----- | ---------- | ------------------------------------------------------------ |\r\n| ret   | int        | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0                                     |\r\n| frame | np.ndarray | \u53d6\u5f97\u3057\u305f\u753b\u50cf\u30c7\u30fc\u30bf<br/>\u30ab\u30e9\u30fc\u753b\u50cf\u306e\u5834\u5408\u3001\u30c7\u30fc\u30bf\u306e\u4e26\u3073\u306fB, G, R\u3068\u306a\u308a\u307e\u3059\u3002<br/>\uff08OpenCV\u3068\u540c\u7b49\uff09 |\r\n\r\n\r\n\r\n------\r\n\r\n### wait_frame_end\u30e1\u30bd\u30c3\u30c9\r\n\r\n\uff11\u30d5\u30ec\u30fc\u30e0\u5206\u306e\u753b\u50cf\u53d6\u8fbc\u5b8c\u4e86\u3092\u5f85\u3061\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapWaitEvent()\u95a2\u6570\u306eACL_INT_FRAMEEND\u76f8\u5f53\r\n\r\n```python\r\ndef wait_frame_end(self, timeout : int = -1) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d    | \u578b   | \u8aac\u660e                                                         |\r\n| ------- | ---- | ------------------------------------------------------------ |\r\n| timeout | int  | \u5f85\u6a5f\u6642\u9593\u3092msec\u5358\u4f4d\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002<br />\u5024\u304c\u8ca0\u306e\u5834\u5408\u3001timeout\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u6307\u5b9a\u3055\u308c\u305f\u6642\u9593\u5206\u5f85\u6a5f\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### wait_grab_end\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u753b\u50cf\u5165\u529b\u7d42\u4e86\u5272\u308a\u8fbc\u307f\u3092\u5f85\u3061\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapWaitEvent()\u95a2\u6570\u306eACL_INT_GRABEND\u76f8\u5f53\r\n\r\n```python\r\ndef wait_grab_end(self, timeout : int = -1) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d    | \u578b   | \u8aac\u660e                                                         |\r\n| ------- | ---- | ------------------------------------------------------------ |\r\n| timeout | int  | \u5f85\u6a5f\u6642\u9593\u3092msec\u5358\u4f4d\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002<br />\u5024\u304c\u8ca0\u306e\u5834\u5408\u3001timeout\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u6307\u5b9a\u3055\u308c\u305f\u6642\u9593\u5206\u5f85\u6a5f\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### wait_grab_start\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u753b\u50cf\u5165\u529b\u958b\u59cb\u5272\u308a\u8fbc\u307f\u3092\u5f85\u3061\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapWaitEvent()\u95a2\u6570\u306eACL_INT_GRABSTART\u76f8\u5f53\r\n\r\n```python\r\ndef wait_grab_start(self, timeout : int = -1) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d    | \u578b   | \u8aac\u660e                                                         |\r\n| ------- | ---- | ------------------------------------------------------------ |\r\n| timeout | int  | \u5f85\u6a5f\u6642\u9593\u3092msec\u5358\u4f4d\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002<br />\u5024\u304c\u8ca0\u306e\u5834\u5408\u3001timeout\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u6307\u5b9a\u3055\u308c\u305f\u6642\u9593\u5206\u5f85\u6a5f\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n### wait_gpin\u30e1\u30bd\u30c3\u30c9\r\n\r\nGPIN \u5272\u308a\u8fbc\u307f\u3092\u5f85\u3061\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapWaitEvent()\u95a2\u6570\u306eACL_INT_GPIN\u76f8\u5f53\r\n\r\n```python\r\ndef wait_gpin(self, timeout : int = -1) -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d    | \u578b   | \u8aac\u660e                                                         |\r\n| ------- | ---- | ------------------------------------------------------------ |\r\n| timeout | int  | \u5f85\u6a5f\u6642\u9593\u3092msec\u5358\u4f4d\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002<br />\u5024\u304c\u8ca0\u306e\u5834\u5408\u3001timeout\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u6307\u5b9a\u3055\u308c\u305f\u6642\u9593\u5206\u5f85\u6a5f\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n## Structure\r\n\r\n| Structure             | Descriptoin                  |\r\n| --------------------- | ---------------------------- |\r\n| ACAPERRORINFOEX       | \u62e1\u5f35\u30a8\u30e9\u30fc\u60c5\u5831               |\r\n| ACL_BUFF_INFO_DIVIDE  | \u30d0\u30c3\u30d5\u30a1\u5206\u5272DMA\u8a2d\u5b9a          |\r\n| ACL_BUFF_INFO_RESIZE  | \u30b5\u30a4\u30ba\u9055\u3044 DMA\u8a2d\u5b9a           |\r\n| ACL_BUFF_INFO_ROI     | \u975e\u7dda\u5f62 DMA(ROI)\u8a2d\u5b9a          |\r\n| ACL_CAM_FEATURE_INFO  | \u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u60c5\u5831             |\r\n| ACL_CAM_FEATURE_LIST  | \u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u69cb\u9020(\u30ea\u30b9\u30c8)\u60c5\u5831 |\r\n| ACL_CAM_PROPERTY_LIST | \u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u914d\u5217\u60c5\u5831         |\r\n\r\n\r\n\r\n------\r\n\r\n### ACAPERRORINFOEX\u69cb\u9020\u4f53\r\n\r\n\u62e1\u5f35\u30a8\u30e9\u30fc\u60c5\u5831\r\n\r\n ***\u30e1\u30f3\u30d0\u30fc***\r\n\r\n| \u540d\u524d              | \u578b            | \u8aac\u660e                                                         |\r\n| ----------------- | ------------- | ------------------------------------------------------------ |\r\n| nChannel          | c_int         | \u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u305f\u30c1\u30e3\u30f3\u30cd\u30eb<br />0: \u30c1\u30e3\u30f3\u30cd\u30eb\u4f9d\u5b58\u306a\u3057<br />1: CH1<br />2: CH2<br />3: CH3<br />4: CH4<br />5: CH5<br />6: CH6 |\r\n| dwCommonErrorCode | c_ulong       | \u5171\u901a\u8981\u56e0\u30a8\u30e9\u30fc                                               |\r\n| dwBoardErrorCode  | c_ulong       | \u30dc\u30fc\u30c9\u56fa\u6709\u8981\u56e0\u30a8\u30e9\u30fc                                         |\r\n| dwExtendErrorCode | c_ulong       | \u62e1\u5f35\u30a8\u30e9\u30fc                                                   |\r\n| nGCErrorCode      | c_int         | GenICam \u30a8\u30e9\u30fc\u30b3\u30fc\u30c9\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002                         |\r\n| nBaseErrorCode    | c_int         | GenICam \u30a2\u30af\u30bb\u30b9\u6642\u30d9\u30fc\u30b9\u30e9\u30a4\u30d6\u30e9\u30ea\u30a8\u30e9\u30fc\u30b3\u30fc\u30c9\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002 |\r\n| dwAckCode         | c_ulong       | GenICam \u30a2\u30af\u30bb\u30b9\u6642\u306e Ack \u30b3\u30fc\u30c9\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002              |\r\n| reserved          | c_ulong * 32  | \u4e88\u7d04\u9818\u57df                                                     |\r\n| pErrMsg           | c_char * 2048 | \u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002                             |\r\n\r\n\r\n\r\n------\r\n\r\n### ACL_BUFF_INFO_DIVIDE\u69cb\u9020\u4f53\r\n\r\n\u30d0\u30c3\u30d5\u30a1\u5206\u5272DMA\u8a2d\u5b9a\r\n\r\n***\u30e1\u30f3\u30d0\u30fc***\r\n\r\n| \u540d\u524d          | \u578b             | \u8aac\u660e                                                         |\r\n| ------------- | -------------- | ------------------------------------------------------------ |\r\n| SizeOf        | c_ulong        | \u69cb\u9020\u4f53\u306e\u30b5\u30a4\u30ba                                               |\r\n| TransferXSize | c_ulong        | \u5b9f\u969b\u306b\u8ee2\u9001\u3059\u308b\u6a2a\u306e\u753b\u7d20\u6570\u3067\u3059\u3002(\uff1d\u5165\u529b\u30c7\u30fc\u30bf\u77e9\u5f62\u30b5\u30a4\u30ba)       |\r\n| TransferYSize | c_ulong        | \u5b9f\u969b\u306b\u8ee2\u9001\u3059\u308b\u884c\u6570\u3067\u3059\u3002(\uff1d\u5165\u529b\u30c7\u30fc\u30bf\u77e9\u5f62\u30b5\u30a4\u30ba)             |\r\n| BitWidth      | c_ulong        | 1 \u753b\u7d20\u306e Bit \u5e45\u3067\u3059\u3002                                        |\r\n| NumOfRegions  | c_ulong        | \u30d0\u30c3\u30d5\u30a1\u5206\u5272\u6570\u3067\u3059\u30022 \u4ee5\u4e0a\u306e\u5024\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                 |\r\n| Region        | ACL_REGION * 1 | 2 \u3064\u4ee5\u4e0a\u306e\u5206\u5272\u60c5\u5831\u3092\u3001ACL_REGION \u69cb\u9020\u4f53\u914d\u5217\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002 NumOfRegions \u306e\u6570\u3060\u3051\u69cb\u9020\u4f53\u914d\u5217\u3092\u7528\u610f\u3057\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### ACL_BUFF_INFO_RESIZE\u69cb\u9020\u4f53\r\n\r\n\u30b5\u30a4\u30ba\u9055\u3044 DMA\u8a2d\u5b9a\r\n\r\n***\u30e1\u30f3\u30d0\u30fc***\r\n\r\n| \u540d\u524d          | \u578b       | \u8aac\u660e                                                         |\r\n| ------------- | -------- | ------------------------------------------------------------ |\r\n| SizeOf        | c_ulong  | \u69cb\u9020\u4f53\u306e\u30b5\u30a4\u30ba                                               |\r\n| TransferXSize | c_ulong  | \u5b9f\u969b\u306b\u8ee2\u9001\u3059\u308b\u6a2a\u306e\u753b\u7d20\u6570\u3067\u3059\u3002(\uff1d\u8ee2\u9001\u5148\u30d0\u30c3\u30d5\u30a1\u306e\u6a2a\u306e\u753b\u7d20\u6570) |\r\n| TransferYSize | c_ulong  | \u5b9f\u969b\u306b\u8ee2\u9001\u3059\u308b\u884c\u6570\u3067\u3059\u3002(\uff1d\u8ee2\u9001\u5148\u30d0\u30c3\u30d5\u30a1\u306e\u884c\u6570)             |\r\n| BitWidth      | c_ulong  | 1 \u753b\u7d20\u306e Bit \u5e45\u3067\u3059\u3002                                        |\r\n| DmaType       | c_ulong  | \u8ee2\u9001\u65b9\u6cd5\u306b\u5909\u5316\u3092\u4e0e\u3048\u308b\u5834\u5408\u306b\u3001\u4ee5\u4e0b\u306e\u5b9a\u7fa9\u3092 BitOR \u3067\u6307\u5b9a\u3057\u307e\u3059\u3002 <br />ACL_DMATYPE_YREVERSE(1) ACL_DMATYPE_VERT_REMAP(2) <br />\u4f55\u3082\u8a2d\u5b9a\u3057\u306a\u3044\u5834\u5408\u306f\u4ee5\u4e0b\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 <br />ACL_DMATYPE_NORMAL(0) |\r\n| pBuffer       | c_void_p | \u8ee2\u9001\u3059\u308b\u30c7\u30fc\u30bf\u306e\u5916\u90e8\u30d0\u30c3\u30d5\u30a1\u30dd\u30a4\u30f3\u30bf\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 \u3053\u3053\u306b\u8a2d\u5b9a\u3059\u308b\u30d0\u30c3\u30d5\u30a1\u306f\u3001\u4ee5\u4e0b\u306e\u30b5\u30a4\u30ba\u4ee5\u4e0a\u3092\u78ba\u4fdd\u3057\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002 <br />\u30d0\u30c3\u30d5\u30a1\u30b5\u30a4\u30ba<br />\u3000\uff1dTransferXSize\u00d71 \u753b\u7d20\u306e\u30d0\u30a4\u30c8\u6570\u00d7TransferYSize |\r\n\r\n\r\n\r\n------\r\n\r\n### ACL_BUFF_INFO_ROI\u69cb\u9020\u4f53\r\n\r\n\u30b5\u30a4\u30ba\u9055\u3044 DMA\u8a2d\u5b9a\r\n\r\n***\u30e1\u30f3\u30d0\u30fc***\r\n\r\n| \u540d\u524d          | \u578b       | \u8aac\u660e                                                         |\r\n| ------------- | -------- | ------------------------------------------------------------ |\r\n| SizeOf        | c_ulong  | \u69cb\u9020\u4f53\u306e\u30b5\u30a4\u30ba                                               |\r\n| TransferXSize | c_ulong  | \u5b9f\u969b\u306b\u8ee2\u9001\u3059\u308b\u6a2a\u306e\u753b\u7d20\u6570\u3067\u3059\u3002(\uff1d\u8ee2\u9001\u5148\u30d0\u30c3\u30d5\u30a1\u306e\u6a2a\u306e\u753b\u7d20\u6570) |\r\n| TransferYSize | c_ulong  | \u5b9f\u969b\u306b\u8ee2\u9001\u3059\u308b\u884c\u6570\u3067\u3059\u3002(\uff1d\u8ee2\u9001\u5148\u30d0\u30c3\u30d5\u30a1\u306e\u884c\u6570)             |\r\n| BitWidth      | c_ulong  | 1 \u753b\u7d20\u306e Bit \u5e45\u3067\u3059\u3002                                        |\r\n| DmaType       | c_ulong  | \u8ee2\u9001\u65b9\u6cd5\u306b\u5909\u5316\u3092\u4e0e\u3048\u308b\u5834\u5408\u306b\u3001\u4ee5\u4e0b\u306e\u5b9a\u7fa9\u3092 BitOR \u3067\u6307\u5b9a\u3057\u307e\u3059\u3002 <br />ACL_DMATYPE_YREVERSE(1) <br />ACL_DMATYPE_VERT_REMAP(2) <br />\u4f55\u3082\u8a2d\u5b9a\u3057\u306a\u3044\u5834\u5408\u306f\u4ee5\u4e0b\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 <br />ACL_DMATYPE_NORMAL(0) |\r\n| BufferXSize   | c_ulong  | \u8ee2\u9001\u5148\u30d0\u30c3\u30d5\u30a1\u306e\u6a2a\u306e\u753b\u7d20\u6570\u3067\u3059\u3002                             |\r\n| BufferYSize   | c_ulong  | \u8ee2\u9001\u5148\u30d0\u30c3\u30d5\u30a1\u306e\u884c\u6570\u3067\u3059\u3002                                   |\r\n| XOffset       | c_ulong  | \u8ee2\u9001\u5148\u30d0\u30c3\u30d5\u30a1\u77e9\u5f62\u306e\u5de6\u4e0a\u5ea7\u6a19\u304b\u3089\u306e\u6a2a(X)\u30aa\u30d5\u30bb\u30c3\u30c8\u3067\u3059\u3002      |\r\n| YOffset       | c_ulong  | \u8ee2\u9001\u5148\u30d0\u30c3\u30d5\u30a1\u77e9\u5f62\u306e\u5de6\u4e0a\u5ea7\u6a19\u304b\u3089\u306e\u7e26(Y)\u30aa\u30d5\u30bb\u30c3\u30c8\u3067\u3059\u3002      |\r\n| pBuffer       | c_void_p | \u8ee2\u9001\u3059\u308b\u30c7\u30fc\u30bf\u306e\u5916\u90e8\u30d0\u30c3\u30d5\u30a1\u30dd\u30a4\u30f3\u30bf\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 \u3053\u3053\u306b\u8a2d\u5b9a\u3059\u308b\u30d0\u30c3\u30d5\u30a1\u306f\u3001\u4ee5\u4e0b\u306e\u30b5\u30a4\u30ba\u4ee5\u4e0a\u3092\u78ba\u4fdd\u3057\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b \u3093\u3002 <br />\u30d0\u30c3\u30d5\u30a1\u30b5\u30a4\u30ba<br />\u3000\uff1dTransferXSize\u00d71 \u753b\u7d20\u306e\u30d0\u30a4\u30c8\u6570\u00d7TransferYSize |\r\n\r\n\r\n\r\n------\r\n\r\n### ACL_CAM_FEATURE_INFO\u69cb\u9020\u4f53\r\n\r\n\u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u60c5\u5831\r\n\r\n***\u30e1\u30f3\u30d0\u30fc***\r\n\r\n| \u540d\u524d         | \u578b                  | \u8aac\u660e                                                         |\r\n| ------------ | ------------------- | ------------------------------------------------------------ |\r\n| nType        | c_int               | Feature \u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30bf\u30a4\u30d7\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002<br />2:Integer <br />3:Boolean <br />4:Command <br />5:Float <br />6:String <br />9:Enumeration |\r\n| nEntryStrNum | c_int               | EntryStr \u306e\u8981\u7d20\u6570\u3092\u8fd4\u3057\u307e\u3059\u3002                                |\r\n| EntryStr     | (c_char * 128) * 32 | Enum \u6587\u5b57\u5217\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002                                  |\r\n| AccessMode   | c_char * 32         | AccessMode \u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002 (RO/RW/WO)                       |\r\n| ValueMax     | c_double            | \u8a2d\u5b9a\u53ef\u80fd\u6700\u5927\u5024\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002                               |\r\n| ValueMin     | c_double            | \u8a2d\u5b9a\u53ef\u80fd\u6700\u5c0f\u5024\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002                               |\r\n| ValueInc     | c_double            | \u8a2d\u5b9a\u53ef\u80fd\u5358\u4f4d\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002                                 |\r\n\r\n\r\n\r\n------\r\n\r\n### ACL_CAM_FEATURE_LIST\u69cb\u9020\u4f53\r\n\r\n\u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u69cb\u9020(\u30ea\u30b9\u30c8)\u60c5\u5831\r\n\r\n***\u30e1\u30f3\u30d0\u30fc***\r\n\r\n| \u540d\u524d            | \u578b                  | \u8aac\u660e                                        |\r\n| --------------- | ------------------- | ------------------------------------------- |\r\n| CategoryNum     | c_ulonglong         | \u53d6\u5f97\u3057\u305f Category \u6570\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002        |\r\n| CategoryName    | (c_char * 128) * 64 | \u53d6\u5f97\u3057\u305f Category \u540d\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002        |\r\n| NextCategoryNum | c_ulonglong * 64    | Category \u4ee5\u4e0b\u306e Category \u6570\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002 |\r\n| FeatureNum      | c_ulonglong         | \u53d6\u5f97\u3057\u305f FeatureNum \u6570\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002      |\r\n| FeatureName     | (c_char * 128) * 64 | \u53d6\u5f97\u3057\u305f FeatureNum \u540d\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002      |\r\n\r\n\r\n\r\n------\r\n\r\n### ACL_CAM_PROPERTY_LIST\u69cb\u9020\u4f53\r\n\r\n\u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u914d\u5217\u60c5\u5831\r\n\r\n***\u30e1\u30f3\u30d0\u30fc***\r\n\r\n| \u540d\u524d              | \u578b                   | \u8aac\u660e                                   |\r\n| ----------------- | -------------------- | -------------------------------------- |\r\n| PropertyNum       | c_ulonglong          | \u53d6\u5f97\u3057\u305f\u30d7\u30ed\u30d1\u30c6\u30a3\u6570\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002   |\r\n| PropertyName      | (c_char * 128) * 32  | \u53d6\u5f97\u3057\u305f\u30d7\u30ed\u30d1\u30c6\u30a3\u540d\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002   |\r\n| PropertyValue     | (c_char * 2048) * 32 | \u53d6\u5f97\u3057\u305f\u30d7\u30ed\u30d1\u30c6\u30a3\u5024\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002   |\r\n| PropertyAttrValue | (c_char * 128) * 32) | \u53d6\u5f97\u3057\u305f\u30d7\u30ed\u30d1\u30c6\u30a3\u5c5e\u6027\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n# CameraControl Class\r\n\r\n\u30ab\u30e1\u30e9\u30d1\u30e9\u30e1\u30fc\u30bf\u306e\u53d6\u5f97\uff0f\u8a2d\u5b9a\u7528\u30af\u30e9\u30b9\u3067\u3059\u3002\r\n\r\nAcaPy Ver.1.1.0\u306b\u304a\u3044\u3066\u3001CoaXPress\u30ab\u30e1\u30e9\u306e\u307f\u306e\u5bfe\u5fdc\u3068\u306a\u308a\u307e\u3059\u3002\r\n\r\n\r\n\r\n## Examples\r\n\r\nAcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304b\u3089CameraControl\u30af\u30e9\u30b9\u3092\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3057\u3001AcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3067\u63a5\u7d9a\u3055\u308c\u3066\u3044\u308b\u30ab\u30e1\u30e9\u306b\u5bfe\u3057\u3066\u3001\u30ab\u30e1\u30e9\u306e\u8a2d\u5b9a\u3092\u884c\u3044\u307e\u3059\u3002\r\n\r\n```python\r\nimport sys\r\n\r\nimport acapy    # AcaPy\u30af\u30e9\u30b9\r\nfrom acapy import cameracontrol as cam # \u30ab\u30e1\u30e9\u8a2d\u5b9a\u7528\r\n\r\n# **************************************************************\r\n# AcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9(\u30dc\u30fc\u30c9\u306e\u8a2d\u5b9a\u3092\u884c\u3046)\r\n# **************************************************************\r\ncapture = acapy.AcaPy()\r\n\r\nif capture.is_opened is False:\r\n    # \u753b\u50cf\u5165\u529b\u30dc\u30fc\u30c9\u304c\u898b\u3064\u304b\u3089\u306a\u3044\u3068\u304d\u306f\u7d42\u4e86\r\n    capture.dispose()\r\n    print(\"Board or Camera not recognized.\")\r\n    sys.exit(0)\r\n\r\n# ini\u30d5\u30a1\u30a4\u30eb\uff08\u30dc\u30fc\u30c9\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\uff09\u306e\u8aad\u8fbc\u3001AcapLib2\u306eini\u30d5\u30a1\u30a4\u30eb\u3068\u5171\u901a\u3067\u3059\u3002\r\n# ini\u30d5\u30a1\u30a4\u30eb\u306f\u5b9f\u969b\u306b\u4f7f\u7528\u3059\u308b\u30ab\u30e1\u30e9\u7528\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002\r\nret = capture.load_inifile(\"./AreaSensor_mono.ini\")\r\n\r\n# \u30dc\u30fc\u30c9\u306e\u8a2d\u5b9a\u4f8b\uff08AcaPy\u30af\u30e9\u30b9\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u5024\u3092\u8a2d\u5b9a\uff09\r\ncapture.width = 640\r\ncapture.height = 480\r\n\r\n# \u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5024\u3092\u8a2d\u5b9a\u3057\u305f\u3068\u304d\u306f\u3001reflect_param()\u30e1\u30bd\u30c3\u30c9\u306e\u5b9f\u884c\u304c\u5fc5\u8981\u306b\u306a\u308a\u307e\u3059\u3002\r\ncapture.reflect_param() \r\n\r\n# \u30dc\u30fc\u30c9\u306e\u8a2d\u5b9a\u3092ini\u30d5\u30a1\u30a4\u30eb\u306b\u4fdd\u5b58\r\ncapture.save_inifile(\"./AreaSensor_mono_save.ini\")\r\n\r\n# \u30dc\u30fc\u30c9\u306e\u8a2d\u5b9a\u5024\u306e\u53d6\u5f97\u4f8b\uff08AcaPy\u30af\u30e9\u30b9\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u3067\u5024\u3092\u53d6\u5f97\uff09\r\ncapture_width = capture.width   # \u753b\u50cf\u306e\u5e45\r\ncapture_height = capture.height # \u753b\u50cf\u306e\u9ad8\u3055\r\ncapture_camera_bit = capture.camera_bit # \u753b\u50cf\u306e\u30d3\u30c3\u30c8\u6570\r\n\r\nprint(\"-------------------------------------------------\")\r\n# \u53d6\u8fbc\u3080\u753b\u50cf\u60c5\u5831\u3092\u8868\u793a\r\nprint(f\"Capture Image Info: {capture_width} x {capture_height} x {capture_camera_bit}bit\")\r\nprint(\"[Capture properties]\")\r\n# \u30dc\u30fc\u30c9\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5024\u4e00\u89a7\u3092\u8868\u793a\r\nprint(capture.get_acapy_properties_text())\r\n\r\n# **************************************************************\r\n# CameraControl\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9(\u30ab\u30e1\u30e9\u306e\u8a2d\u5b9a\u3092\u884c\u3046)\r\n# **************************************************************\r\n# AcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304b\u3089CameraControl\u7528\u30af\u30e9\u30b9\u3092\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3059\u308b\r\ncamera = cam.CameraControl(capture)\r\n\r\n# \u30ab\u30e1\u30e9\u306e\u8a2d\u5b9a\u4f8b\uff08set_value(\u8a2d\u5b9a\u5024\u306e\u6587\u5b57\u5217, \u5024)\u3092\u6307\u5b9a\u3057\u3066\u8a2d\u5b9a\uff09\r\nret = camera.set_value('Width', 640)\r\nret = camera.set_value('Height', 480)\r\n# Command\u306e\u5b9f\u884c\u4f8b(set_value(\u8a2d\u5b9a\u5024\u306e\u6587\u5b57\u5217))\u3001\u8a2d\u5b9a\u5024\u306e\u30ab\u30e1\u30e9\u3078\u306e\u4fdd\u5b58\u4f8b\r\n#ret = camera.set_value('UserSetSave')\r\n\r\n# \u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u306e\u53d6\u5f97\u4f8b\uff08get_value(\u8a2d\u5b9a\u5024\u306e\u6587\u5b57\u5217)\u3092\u5b9f\u884c\u3057\u3066\u53d6\u5f97\uff09\r\nret, camera_width, value_info = camera.get_value('Width')\r\nret, camera_height, value_info = camera.get_value('Height')\r\nret, camera_pixelformat, value_info = camera.get_value('PixelFormat')\r\n\r\nprint(\"-------------------------------------------------\")\r\n# \u30ab\u30e1\u30e9\u306e\u753b\u50cf\u60c5\u5831\u3092\u8868\u793a\r\nprint(f\"Camera Image Info: {camera_width} x {camera_height} x {camera_pixelformat}\")\r\nprint(\"[Camera setting]\")\r\n\r\n# \u30ab\u30e1\u30e9\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5024\u4e00\u89a7\u3092\u8868\u793a\r\nprint(camera.get_camera_category_feature_text())\r\n\r\n# **************************************************************\r\n# \u753b\u50cf\u306e\u53d6\u8fbc\r\n# **************************************************************\r\nret, img = capture.snap()\r\nif ret == acapy.AcaPy.OK:\r\n    # \u753b\u50cf\u304c\u53d6\u5f97\u3067\u304d\u305f\u3068\u304d\r\n    print(img)\r\n\r\ncapture.dispose() # AcaPy\u30af\u30e9\u30b9\u306e\u30ea\u30bd\u30fc\u30b9\u306e\u89e3\u653e\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n## Constructors\r\n\r\nAcaPy\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304b\u3089CameraControl\u30af\u30e9\u30b9\u3092\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3057\u307e\u3059\u3002\r\n\r\n```Python\r\ndef __init__(self, acapy_obj : acapy.AcaPy, visibility : Visibility = Visibility.Invisible, serial_read_wait_time : float = 0):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d                  | \u578b          | \u8aac\u660e                                                   |\r\n| --------------------- | ----------- | ------------------------------------------------------ |\r\n| acapy_obj             | acapy.AcaPy | AcaPy\u30af\u30e9\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                  |\r\n| visibility            | Visibility  | \u30e6\u30fc\u30b6\u30fc\u30ec\u30d9\u30eb\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                           |\r\n| serial_read_wait_time | float       | \u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u53d7\u4fe1\u5b8c\u4e86\u307e\u3067\u306e\u5f85\u3061\u6642\u9593\u3092\u79d2\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n## Properties\r\n\r\n| Properties            | Descriptoin                                                  | Get/Set |\r\n| --------------------- | ------------------------------------------------------------ | :-----: |\r\n| serial_read_wait_time | \u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u306e\u53d7\u4fe1\u5b8c\u4e86\u307e\u3067\u306e\u5f85\u3061\u6642\u9593(Sec)\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n\r\n\r\n\r\n------\r\n\r\n## Methods\r\n\r\n| Methods                                                      | Descriptoin                                          |\r\n| ------------------------------------------------------------ | ---------------------------------------------------- |\r\n| get_camera_category_feature_text(visibility, description_enabled) | \u30ab\u30e1\u30e9\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5024\u4e00\u89a7\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n| get_camera_feature_list(visibility)                          | \u30ab\u30e1\u30e9\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5024\u4e00\u89a7\u3092\u30ea\u30b9\u30c8\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002   |\r\n| get_value(value_name : str)                                  | \u30ab\u30e1\u30e9\u304b\u3089\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                           |\r\n| set_value(value_name, value)                                 | \u30ab\u30e1\u30e9\u306b\u5024\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                             |\r\n| serial_read(asc, time_out, buffer_size, end_str)             | \u30ab\u30e1\u30e9\u304b\u3089\u5024\u3092\u53d7\u4fe1\u3057\u307e\u3059\u3002                           |\r\n| serial_write(write_command, asc, start_str, end_str)         | \u30ab\u30e1\u30e9\u306b\u5024\u3092\u9001\u4fe1\u3057\u307e\u3059\u3002                             |\r\n\r\n\r\n\r\n------\r\n\r\n### get_camera_category_feature_text\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ab\u30e1\u30e9\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5024\u4e00\u89a7\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef get_camera_category_feature_text(self, visibility : Visibility = None, description_enabled : bool = False) -> str:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d                | \u578b         | \u8aac\u660e                                                         |\r\n| ------------------- | ---------- | ------------------------------------------------------------ |\r\n| visibility          | Visibility | \u30e6\u30fc\u30b6\u30fc\u30ec\u30d9\u30eb\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />\u6307\u5b9a\u3057\u306a\u3044\u5834\u5408CameraControl\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u6642\u306b\u6307\u5b9a\u3057\u305fvisibility\u304c\u9069\u5fdc\u3055\u308c\u307e\u3059\u3002 |\r\n| description_enabled | bool       | \u8a2d\u5b9a\u5024\u306e\u8aac\u660e\u3092\u542b\u3081\u308b(True)\u304b\u542b\u3081\u306a\u3044\uff08False\uff09\u304b\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                       |\r\n| ---- | ---- | -------------------------- |\r\n| ret  | str  | \u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u4e00\u89a7\u306e\u30c6\u30ad\u30b9\u30c8 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_camera_feature_list\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ab\u30e1\u30e9\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u5024\u4e00\u89a7\u3092\u30ea\u30b9\u30c8\u3067\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef get_camera_feature_list(self, visibility : Visibility = None) -> List[ValueInfo]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d       | \u578b         | \u8aac\u660e                         |\r\n| ---------- | ---------- | ---------------------------- |\r\n| visibility | Visibility | \u30e6\u30fc\u30b6\u30fc\u30ec\u30d9\u30eb\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b              | \u8aac\u660e                     |\r\n| ---- | --------------- | ------------------------ |\r\n| ret  | List[ValueInfo] | \u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u4e00\u89a7\u306e\u30ea\u30b9\u30c8 |\r\n\r\n\r\n\r\n------\r\n\r\n### get_value\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ab\u30e1\u30e9\u304b\u3089\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef get_value(self, value_name : str) -> Tuple[bool, Union[int, float, str, bool, None], Union[ValueInfo, None]]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d       | \u578b   | \u8aac\u660e                            |\r\n| ---------- | ---- | ------------------------------- |\r\n| value_name | str  | \u8a2d\u5b9a\u5024\u540d(Feature)\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, value, value_info)\r\n\r\n| \u540d\u524d       | \u578b        | \u8aac\u660e                            |\r\n| ---------- | --------- | ------------------------------- |\r\n| ret        | bool      | \u6210\u529f\u6642: True<br />\u5931\u6557\u6642: False |\r\n| value      | Any       | \u30ab\u30e1\u30e9\u304b\u3089\u53d6\u5f97\u3057\u305f\u8a2d\u5b9a\u5024        |\r\n| value_info | ValueInfo | \u8a2d\u5b9a\u5024\u60c5\u5831                      |\r\n\r\n\r\n\r\n------\r\n\r\n### set_value\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30ab\u30e1\u30e9\u306b\u5024\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\n\r\n\u8a2d\u5b9a\u5024\u304c Command \u306e\u5834\u5408\u3001value_name\u306e\u307f\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002(value\u306f\u6307\u5b9a\u3057\u306a\u3044)\r\n\r\n```python\r\ndef set_value(self, value_name : str, value : Union[int, float, str, bool, None] = None) -> bool:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d       | \u578b   | \u8aac\u660e                            |\r\n| ---------- | ---- | ------------------------------- |\r\n| value_name | str  | \u8a2d\u5b9a\u5024\u540d(Feature)\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n| value      | Any  | \u8a2d\u5b9a\u3059\u308b\u5024\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002        |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                            |\r\n| ---- | ---- | ------------------------------- |\r\n| ret  | bool | \u6210\u529f\u6642: True<br />\u5931\u6557\u6642: False |\r\n\r\n\r\n\r\n------\r\n\r\n### serial_read\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30b7\u30ea\u30a2\u30eb\u901a\u4fe1\u30b3\u30de\u30f3\u30c9\u306e\u53d7\u4fe1\u3092\u884c\u3044\u307e\u3059\u3002\r\n\u53d7\u4fe1\u306f\u30c7\u30fc\u30bf\u304c\u7a7a\u306b\u306a\u308b\u307e\u3067\u3001stop_bit\u306b\u306a\u308b\u307e\u3067\u3001\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8\u306b\u306a\u308b\u307e\u3067\u884c\u308f\u308c\u307e\u3059\u3002\r\n\r\nAcapLib2\u306eAcapSerialRead()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef serial_read(self, asc : bool = True, time_out : int = 100, buffer_size : int = 511, end_str : Union[str, None] = None) -> Tuple[int, str, int]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d        | \u578b   | \u8aac\u660e                                                         |\r\n| ----------- | ---- | ------------------------------------------------------------ |\r\n| asc         | bool | \u30b7\u30ea\u30a2\u30eb\u306b\u8aad\u8fbc\u3080(\u53d7\u4fe1)\u6587\u5b57\u306e\u30b3\u30fc\u30c9\u3092ASCII\u306b\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />False: 16 \u9032\u6570(HEX)\u8868\u8a18<br />True: ASCII |\r\n| time_out    | int  | \u53d7\u4fe1\u3057\u305f\u30c7\u30fc\u30bf\u30d0\u30c3\u30d5\u30a1\u306e\u6700\u5f8c\u5c3e\u304c\u3001\u7d42\u7aef\u6587\u5b57\u5217\u3068\u4e00\u81f4\u3059\u308b\u307e\u3067\u306e\u30bf\u30a4 \u30e0\u30a2\u30a6\u30c8\u6642\u9593[mSec]\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n| buffer_size | int  | \u30b3\u30de\u30f3\u30c9\u6587\u5b57\u5217\u683c\u7d0d\u30d0\u30c3\u30d5\u30a1\u306e\u30b5\u30a4\u30ba\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002             |\r\n| end_str     | int  | \u30b3\u30de\u30f3\u30c9\u306e\u7d42\u7aef\u6587\u5b57\u5217\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002                           |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(ret, read_command, read_bytes)\r\n\r\n| \u540d\u524d         | \u578b   | \u8aac\u660e                     |\r\n| ------------ | ---- | ------------------------ |\r\n| ret          | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n| read_command | str  | \u53d7\u4fe1\u3057\u305f\u6587\u5b57\u5217           |\r\n| read_bytes   | int  | \u53d7\u4fe1\u3057\u305f\u30c7\u30fc\u30bf\u306e\u30d0\u30a4\u30c8\u6570 |\r\n\r\n\r\n\r\n------\r\n\r\n### serial_write\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u6307\u5b9a\u3057\u305f\u6587\u5b57\u30b3\u30fc\u30c9\u3067\u30b3\u30de\u30f3\u30c9\u306e\u66f8\u8fbc\u307f(\u9001\u4fe1)\u3092\u884c\u3044\u307e\u3059\u3002\r\nAcapLib2\u306eAcapSerialWrite()\u95a2\u6570\u76f8\u5f53\r\n\r\n```python\r\ndef serial_write(self, write_command : str, asc : bool = True, start_str : Union[str, None] = None, end_str : Union[str, None] = \"\\r\") -> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d          | \u578b   | \u8aac\u660e                                                         |\r\n| ------------- | ---- | ------------------------------------------------------------ |\r\n| write_command | str  | \u30b7\u30ea\u30a2\u30eb\u306b\u9001\u4fe1\u3059\u308b\u30b3\u30de\u30f3\u30c9                                   |\r\n| asc           | bool | \u30b7\u30ea\u30a2\u30eb\u306b\u66f8\u8fbc\u3080(\u9001\u4fe1)\u6587\u5b57\u306e\u30b3\u30fc\u30c9\u3092ASCII\u306b\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />False: 16 \u9032\u6570(HEX)\u8868\u8a18<br />True: ASCII |\r\n| start_str     | str  | asc \u304cTRUE \u306e\u5834\u5408\u306b\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002<br/>\u30b3\u30de\u30f3\u30c9\u306e\u958b\u59cb\u6587\u5b57\u5217(ASCII \u8868\u8a18)<br/>\u4f7f\u7528\u3057\u306a\u3044\u5834\u5408\u306f\u300cNone\u300d\u3092\u6307\u5b9a\u3057\u3066\u4e0b\u3055\u3044 |\r\n| end_str       | str  | asc \u304cTRUE \u306e\u5834\u5408\u306b\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002<br/>\u30b3\u30de\u30f3\u30c9\u306e\u7d42\u7aef\u6587\u5b57\u5217(ASCII \u8868\u8a18)<br/>\u4f7f\u7528\u3057\u306a\u3044\u5834\u5408\u306f\u300cNone\u300d\u3092\u6307\u5b9a\u3057\u3066\u4e0b\u3055\u3044 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nret\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                     |\r\n| ---- | ---- | ------------------------ |\r\n| ret  | int  | \u6210\u529f\u6642: 1<br />\u5931\u6557\u6642: 0 |\r\n\r\n\r\n\r\n------\r\n\r\n## Enum\r\n\r\n| Enum        | Descriptoin                                            |\r\n| ----------- | ------------------------------------------------------ |\r\n| AccessMode  | \u8a2d\u5b9a\u5024\u306e\u30a2\u30af\u30bb\u30b9\u30e2\u30fc\u30c9\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                   |\r\n| FeatureType | \u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u306e\u7a2e\u985e\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002                       |\r\n| Visibility  | \u30ab\u30e1\u30e9\u8a2d\u5b9a\u306e\u30e6\u30fc\u30b6\u30fc\u30ec\u30d9\u30eb\uff08\u8868\u793a\u30ec\u30d9\u30eb\uff09\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### AccessMode\u5217\u6319\u578b\r\n\r\n\u8a2d\u5b9a\u5024\u306e\u30a2\u30af\u30bb\u30b9\u30e2\u30fc\u30c9\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\n\r\n***\u30d5\u30a3\u30fc\u30eb\u30c9***\r\n\r\n| \u540d\u524d | \u5024    | \u8aac\u660e         |\r\n| ---- | ----- | ------------ |\r\n| NI   | b'NI' | \u672a\u5b9f\u88c5       |\r\n| NA   | b'NA' | \u4f7f\u7528\u4e0d\u53ef     |\r\n| WO   | b'WO' | \u66f8\u8fbc\u306e\u307f     |\r\n| RO   | b'RO' | \u8aad\u8fbc\u306e\u307f     |\r\n| RW   | b'RW' | \u8aad\u8fbc\u30fb\u66f8\u8fbc\u53ef |\r\n\r\n\r\n\r\n------\r\n\r\n### FeatureType\u5217\u6319\u578b\r\n\r\n\u30ab\u30e1\u30e9\u8a2d\u5b9a\u5024\u306e\u7a2e\u985e\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\n\r\n***\u30d5\u30a3\u30fc\u30eb\u30c9***\r\n\r\n| \u540d\u524d        | \u5024   | \u8aac\u660e         |\r\n| ----------- | ---- | ------------ |\r\n| Value       | 0    | \u5024           |\r\n| Base        | 1    | \u30d9\u30fc\u30b9       |\r\n| Integer     | 2    | \u6574\u6570\u578b       |\r\n| Boolean     | 3    | \u30d6\u30fc\u30ea\u30a2\u30f3\u578b |\r\n| Command     | 4    | \u30b3\u30de\u30f3\u30c9     |\r\n| Float       | 5    | \u5c0f\u6570\u578b       |\r\n| String      | 6    | \u6587\u5b57\u5217       |\r\n| Register    | 7    | \u30ec\u30b8\u30b9\u30bf     |\r\n| Category    | 8    | \u30ab\u30c6\u30b4\u30ea     |\r\n| Enumeration | 9    | \u5217\u6319\u578b       |\r\n| EnumEntry   | 10   | \u5217\u6319\u9805\u76ee     |\r\n\r\n\r\n\r\n------\r\n\r\n### Visibility\u5217\u6319\u578b\r\n\r\n\u30ab\u30e1\u30e9\u8a2d\u5b9a\u306e\u30e6\u30fc\u30b6\u30fc\u30ec\u30d9\u30eb\uff08\u8868\u793a\u30ec\u30d9\u30eb\uff09\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u3002\r\n\r\n***\u30d5\u30a3\u30fc\u30eb\u30c9***\r\n\r\n| \u540d\u524d                 | \u5024   | \u8aac\u660e                       |\r\n| -------------------- | ---- | -------------------------- |\r\n| Beginner             | 0    | \u521d\u5fc3\u8005                     |\r\n| Expert               | 1    | \u30a8\u30ad\u30b9\u30d1\u30fc\u30c8               |\r\n| Guru                 | 2    | \u30b0\u30eb                       |\r\n| Invisible            | 3    | \u4e0d\u53ef\u8996\uff08\u3059\u3079\u3066\u8868\u793a\u3092\u542b\u3080\uff09 |\r\n| _UndefinedVisibility | 99   | \u672a\u8a2d\u5b9a                     |\r\n\r\n\r\n\r\n------\r\n\r\n## Dataclass\r\n\r\n### ValueInfo class\r\n\r\n\u8a2d\u5b9a\u5024\u60c5\u5831\r\n\r\n| \u540d\u524d        | \u578b          | \u521d\u671f\u5024            | \u8aac\u660e                                                         |\r\n| ----------- | ----------- | ----------------- | ------------------------------------------------------------ |\r\n| category    | str         | ''                | category\u540d<br />(get_camera_category_feature_text()\u30e1\u30bd\u30c3\u30c9\u4f7f\u7528\u6642\u306e\u307f\u8a2d\u5b9a\u3057\u307e\u3059) |\r\n| name        | str         | ''                | feature\u540d                                                    |\r\n| value       | str         | ''                | \u8a2d\u5b9a\u5024                                                       |\r\n| description | str         | ''                | feature\u306e\u8aac\u660e                                                |\r\n| type        | FeatureType | FeatureType.Value | feature\u306e\u7a2e\u985e                                                |\r\n| access_mode | AccessMode  | AccessMode.NI     | \u30a2\u30af\u30bb\u30b9\u30e2\u30fc\u30c9                                               |\r\n| enum_list   | list        |                   | enum\u4e00\u89a7                                                     |\r\n| min         | float       | 0.0               | \u6700\u5c0f\u5024                                                       |\r\n| max         | float       | 0.0               | \u6700\u5927\u5024                                                       |\r\n| increment   | float       | 0.0               | \u6700\u5c0f\u8a2d\u5b9a\u5206\u89e3\u80fd                                               |\r\n\r\n\r\n\r\n------\r\n\r\n# GraphicsBox Class\r\n\r\ntkinter\u306eCanvas\u30af\u30e9\u30b9\u3092\u7d99\u627f\u3057\u305f\u3001tkinter\u7528\u753b\u50cf\u8868\u793a\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u3068\u306a\u308a\u307e\u3059\u3002\r\n\r\n## Constructors\r\n\r\n| Constructors                             | Descriptoin                             |\r\n| ---------------------------------------- | --------------------------------------- |\r\n| GraphicsBox(parent, option = value, ...) | option\u8a2d\u5b9a\u306fTkinter\u306eCanvas\u30af\u30e9\u30b9\u3068\u540c\u3058 |\r\n\r\n\r\n\r\n------\r\n\r\n## Properties\r\n\r\n| Properties       | Descriptoin                                                  | Get/Set |\r\n| ---------------- | ------------------------------------------------------------ | :-----: |\r\n| affine_matrix    | \u753b\u50cf\u8868\u793a\u306b\u4f7f\u7528\u3057\u3066\u3044\u308b3x3\u306e\u30a2\u30d5\u30a3\u30f3\u5909\u63db\u884c\u5217\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| bright_enabled   | \u8f1d\u5ea6\u5024\u306e\u8868\u793a(True)\uff0f\u975e\u8868\u793a(False)\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002  |   \u25cf/\u25cf   |\r\n| cross_beam_color | \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u7528\u5341\u5b57\u7dda\u306e\u8272\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                 |   \u25cf/\u25cf   |\r\n| disp_scale       | \u753b\u50cf\u8868\u793a\u500d\u7387\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002                                   |   \u25cf/-   |\r\n| grid_color       | \u30b0\u30ea\u30c3\u30c9\u7dda\u306e\u8272\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                           |   \u25cf/\u25cf   |\r\n| grid_disp_scale  | \u30b0\u30ea\u30c3\u30c9\u7dda\u3092\u8868\u793a\u3059\u308b\u753b\u50cf\u306e\u6700\u5c0f\u500d\u7387\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002       |   \u25cf/\u25cf   |\r\n| grid_enabled     | \u753b\u50cf\u62e1\u5927\u6642\u306e\u30b0\u30ea\u30c3\u30c9\u7dda\u306e\u8868\u793a(True)\uff0f\u975e\u8868\u793a(False)\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| max_scale        | \u753b\u50cf\u306e\u62e1\u5927\u6642\u306e\u6700\u5927\u500d\u7387\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                   |   \u25cf/\u25cf   |\r\n| min_scale        | \u753b\u50cf\u306e\u7e2e\u5c0f\u6642\u306e\u6700\u5c0f\u500d\u7387\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                   |   \u25cf/\u25cf   |\r\n| profile_enabled  | \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u8868\u793a(True)\uff0f\u975e\u8868\u793a(False)\u306e\u8a2d\u5b9a\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| profile_hight    | \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u30b0\u30e9\u30d5\u306e\u9ad8\u3055\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002                 |   \u25cf/\u25cf   |\r\n| profile_x        | \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3092\u8868\u793a\u3059\u308bX\u5ea7\u6a19\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5ea7\u6a19\uff09\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| profile_x_color  | \u30e2\u30ce\u30af\u30ed\u753b\u50cf\u6642\u306e\u6a2a\u65b9\u5411\u306e\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u7dda\u8272\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| profile_y        | \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3092\u8868\u793a\u3059\u308bY\u5ea7\u6a19\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5ea7\u6a19\uff09\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| profile_y_color  | \u30e2\u30ce\u30af\u30ed\u753b\u50cf\u6642\u306e\u7e26\u65b9\u5411\u306e\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u7dda\u8272\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002 |   \u25cf/\u25cf   |\r\n| zoomup_direction | \u753b\u50cf\u62e1\u5927\u6642\u306e\u30db\u30a4\u30fc\u30eb\u306e\u56de\u8ee2\u65b9\u5411\u3092\u53d6\u5f97\u30fb\u8a2d\u5b9a\u3057\u307e\u3059\u3002  <br />-1:\u4e0b\u3078\u56de\u8ee2\u30011:\u4e0a\u3078\u56de\u8ee2 |   \u25cf/\u25cf   |\r\n\r\n\r\n\r\n## Methods\r\n\r\n| Methods                             | Descriptoin                                                  |\r\n| ----------------------------------- | ------------------------------------------------------------ |\r\n| dest_to_src_xy(xy)                  | \u73fe\u5728\u306e\u8868\u793a\u72b6\u614b\u306b\u304a\u3044\u3066\u3001\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306e\u5ea7\u6a19\u3092\u753b\u50cf\u4e0a\u306e\u5ea7\u6a19\u3078\u5909\u63db\u3057\u307e\u3059\u3002 |\r\n| draw_image(image)                   | Pillow\u306eImage\u5f62\u5f0f\u3082\u3057\u304f\u306fnumpy\u306endarray\u5f62\u5f0f\u306e\u753b\u50cf\u3092GraphicsBox\u3078\u8868\u793a\u3057\u307e\u3059\u3002\u8868\u793a\u53ef\u80fd\u306a\u306e\u306f8bit,24bit,32bit\u306e\u753b\u50cf\u306e\u307f\u3067\u3059\u3002 |\r\n| redraw_image()                      | \u753b\u50cf\u3092\u518d\u63cf\u753b\u3057\u307e\u3059\u3002                                         |\r\n| reset_transform()                   | \u753b\u50cf\u8868\u793a\u3092\u521d\u671f\u72b6\u614b\uff08\u5de6\u4e0a\u306b\u7b49\u500d\u7387\uff09\u306b\u623b\u3057\u307e\u3059\u3002               |\r\n| scale_at(scale, cx, cy)             | \u6307\u5b9a\u3057\u305f\u70b9\u3092\u4e2d\u5fc3\u306b\u62e1\u5927\u7e2e\u5c0f\u3057\u307e\u3059\u3002                           |\r\n| scale_transform(scale)              | \u753b\u50cf\u8868\u793a\u306e\u76f8\u5bfe\u500d\u7387\u3092\u6307\u5b9a\u3057\u62e1\u5927\u7e2e\u5c0f\u3057\u307e\u3059\u3002                   |\r\n| src_to_dest_xy(xy)                  | \u73fe\u5728\u306e\u8868\u793a\u72b6\u614b\u306b\u304a\u3044\u3066\u3001\u753b\u50cf\u4e0a\u306e\u5ea7\u6a19\u3092\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306e\u5ea7\u6a19\u3078\u5909\u63db\u3057\u307e\u3059\u3002 |\r\n| translate(offset_x, offset_y)       | \u753b\u50cf\u8868\u793a\u4f4d\u7f6e\u3092\u5e73\u884c\u79fb\u52d5\u3057\u307e\u3059\u3002                               |\r\n| zoom_fit(image_width, image_height) | \u753b\u50cf\u306e\u5e45\u3068\u9ad8\u3055\u3092\u6307\u5b9a\u3057\u3001\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u5168\u4f53\u306b\u753b\u50cf\u3092\u8868\u793a\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### dest_to_src_xy\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u8868\u793a\u3057\u3066\u3044\u308b\u753b\u50cf\u306e\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306e\u5ea7\u6a19\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5de6\u4e0a\u304c\u539f\u70b9\uff09\u304b\u3089\u3001\u753b\u50cf\u306e\u5ea7\u6a19\u3078\u5909\u63db\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef dest_to_src_xy(self, xy : Tuple[float, float]) -> Tuple[float, float]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d | \u578b                  | \u8aac\u660e                                                         |\r\n| ---- | ------------------- | ------------------------------------------------------------ |\r\n| xy   | Tuple[float, float] | \u8868\u793a\u3057\u3066\u3044\u308b\u753b\u50cf\u306e\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306exy\u5ea7\u6a19\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5de6\u4e0a\u304c\u539f\u70b9\uff09\u3092float\u578b\u306e\u30bf\u30d7\u30eb\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(x, y)\r\n\r\n| \u540d\u524d   | \u578b                  | \u8aac\u660e                                            |\r\n| ------ | ------------------- | ----------------------------------------------- |\r\n| (x, y) | Tuple[float, float] | \u753b\u50cf\u4e0a\u306exy\u5ea7\u6a19\u304cfloat\u578b\u306e\u30bf\u30d7\u30eb\u3067\u53d6\u5f97\u3055\u308c\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### draw_image\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u753b\u50cf\u30c7\u30fc\u30bf\u3092\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306b\u8868\u793a\u3057\u307e\u3059\u3002\r\n\u8868\u793a\u53ef\u80fd\u306a\u306e\u306f8bit,24bit,32bit\u306e\u753b\u50cf\u306e\u307f\u3068\u306a\u308a\u307e\u3059\u3002\r\n\r\n```python\r\ndef draw_image(self, image : Union[Image.Image, np.ndarray])\u3000-> int:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d  | \u578b                             | \u8aac\u660e                                                         |\r\n| ----- | ------------------------------ | ------------------------------------------------------------ |\r\n| image | Union[Image.Image, np.ndarray] | \u8868\u793a\u3059\u308b\u753b\u50cf\u30c7\u30fc\u30bf<br />\u30c7\u30fc\u30bf\u306fPillow\u306eImage\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3082\u3057\u304f\u306fnumpy\u306endarray\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3068\u306a\u308a\u307e\u3059\u3002<br />\u30ab\u30e9\u30fc\u753b\u50cf\u306e\u5834\u5408\u3001R,G,B\u306e\u9806\u3067\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\nid\r\n\r\n| \u540d\u524d | \u578b   | \u8aac\u660e                                        |\r\n| ---- | ---- | ------------------------------------------- |\r\n| id   | int  | tkinter\u306ecreate_image\u306e\u623b\u308a\u5024\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### redraw_image\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u753b\u50cf\u3092\u518d\u63cf\u753b\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef redraw_image(self):\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### reset_transform\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u30af\u30e9\u30b9\u5185\u90e8\u3067\u4f7f\u7528\u3057\u3066\u3044\u308b\u753b\u50cf\u8868\u793a\u7528\u30a2\u30d5\u30a3\u30f3\u5909\u63db\u884c\u5217\u3092\u30bb\u30c3\u30c8\uff08\u5358\u4f4d\u884c\u5217\u306b\u3059\u308b\uff09\u3057\u307e\u3059\u3002\r\n\u30ea\u30bb\u30c3\u30c8\u5f8c\u306b\u753b\u50cf\u3092\u8868\u793a\u3059\u308b\u3068\u3001\u753b\u50cf\u306f\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5de6\u4e0a\u306b\u7b49\u500d\uff08\u500d\u7387\u304c\uff11\uff09\u3067\u8868\u793a\u3055\u308c\u307e\u3059\u3002\r\n\r\n```python\r\ndef reset_transform(self):\r\n```\r\n\r\n\r\n\r\n------\r\n\r\n### scale_at\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u6307\u5b9a\u3057\u305f\u5ea7\u6a19\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5ea7\u6a19\uff09\u3092\u4e2d\u5fc3\u306b\u753b\u50cf\u3092\u62e1\u5927\u7e2e\u5c0f\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef scale_at(self, scale:float, cx:float, cy:float):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d  | \u578b    | \u8aac\u660e                                                         |\r\n| ----- | ----- | ------------------------------------------------------------ |\r\n| scale | float | \u753b\u50cf\u306e\u8868\u793a\u500d\u7387\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />\u500d\u7387\u306f\u73fe\u5728\u306e\u8868\u793a\u72b6\u614b\u304b\u3089\u306e\u76f8\u5bfe\u500d\u7387\u3068\u306a\u308a\u307e\u3059\u3002 |\r\n| cx    | float | \u62e1\u5927\u7e2e\u5c0f\u306e\u57fa\u70b9\u3068\u306a\u308b x \u5ea7\u6a19\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5ea7\u6a19\uff09\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n| cy    | float | \u62e1\u5927\u7e2e\u5c0f\u306e\u57fa\u70b9\u3068\u306a\u308b y \u5ea7\u6a19\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5ea7\u6a19\uff09\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### scale_transform\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u539f\u70b9\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306e\u5de6\u4e0a\uff09\u3092\u4e2d\u5fc3\u306b\u753b\u50cf\u3092\u62e1\u5927\u7e2e\u5c0f\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef scale_transform(self, scale:float):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d  | \u578b    | \u8aac\u660e                                                         |\r\n| ----- | ----- | ------------------------------------------------------------ |\r\n| scale | float | \u753b\u50cf\u306e\u8868\u793a\u500d\u7387\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002<br />\u500d\u7387\u306f\u73fe\u5728\u306e\u8868\u793a\u72b6\u614b\u304b\u3089\u306e\u76f8\u5bfe\u500d\u7387\u3068\u306a\u308a\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### src_to_dest_xy\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u8868\u793a\u3057\u3066\u3044\u308b\u753b\u50cf\u4e0a\u306e\u5ea7\u6a19\u304b\u3089\u3001\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306e\u5ea7\u6a19\u3078\u5909\u63db\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef src_to_dest_xy(self, xy : Tuple[float, float]) -> Tuple[float, float]:\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d | \u578b                  | \u8aac\u660e                                                      |\r\n| ---- | ------------------- | --------------------------------------------------------- |\r\n| xy   | Tuple[float, float] | \u8868\u793a\u3057\u3066\u3044\u308b\u753b\u50cf\u4e0a\u306exy\u5ea7\u6a19\u3092float\u578b\u306e\u30bf\u30d7\u30eb\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n***\u623b\u308a\u5024***\r\n\r\n(x, y)\r\n\r\n| \u540d\u524d   | \u578b                  | \u8aac\u660e                                                    |\r\n| ------ | ------------------- | ------------------------------------------------------- |\r\n| (x, y) | Tuple[float, float] | \u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306exy\u5ea7\u6a19\u304cfloat\u578b\u306e\u30bf\u30d7\u30eb\u3067\u53d6\u5f97\u3055\u308c\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### translate\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u753b\u50cf\u306e\u8868\u793a\u4f4d\u7f6e\u3092\u6307\u5b9a\u3057\u305f\u5927\u304d\u3055\uff08\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306e\u8ddd\u96e2\uff09\u3067\u5e73\u884c\u79fb\u52d5\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef translate(self, offset_x : float, offset_y : float):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d     | \u578b    | \u8aac\u660e                                                    |\r\n| -------- | ----- | ------------------------------------------------------- |\r\n| offset_x | float | \u753b\u50cf\u306eX\u65b9\u5411\u306e\u79fb\u52d5\u91cf\u3092\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306e\u8ddd\u96e2\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n| offset_y | float | \u753b\u50cf\u306eY\u65b9\u5411\u306e\u79fb\u52d5\u91cf\u3092\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u4e0a\u306e\u8ddd\u96e2\u3067\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n### zoom_fit\u30e1\u30bd\u30c3\u30c9\r\n\r\n\u753b\u50cf\u5168\u4f53\u304c\u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u5168\u4f53\u306b\u8868\u793a\u3055\u308c\u308b\u3088\u3046\u306b\u8868\u793a\u4f4d\u7f6e\u3001\u500d\u7387\u3092\u8abf\u6574\u3057\u307e\u3059\u3002\r\n\r\n```python\r\ndef zoom_fit(self, image_width : int, image_height : int):\r\n```\r\n\r\n***\u30d1\u30e9\u30e1\u30fc\u30bf***\r\n\r\n| \u540d\u524d         | \u578b   | \u8aac\u660e                             |\r\n| ------------ | ---- | -------------------------------- |\r\n| image_width  | int  | \u753b\u50cf\u306e\u5e45\u306e\u753b\u7d20\u6570\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002   |\r\n| image_height | int  | \u753b\u50cf\u306e\u9ad8\u3055\u306e\u753b\u7d20\u6570\u3092\u6307\u5b9a\u3057\u307e\u3059\u3002 |\r\n\r\n\r\n\r\n------\r\n\r\n# Changelog\r\n\r\n## Ver.1.1.0\r\n\r\n| \u30e2\u30b8\u30e5\u30fc\u30eb    | \u30d0\u30fc\u30b8\u30e7\u30f3 | \u5099\u8003                                          |\r\n| ------------- | ---------- | --------------------------------------------- |\r\n| acaplib2      | Ver.1.1.0  | CXP\u5bfe\u5fdc\u306b\u4f34\u3046\u5909\u66f4<br />AcapLib2 Ver.8.2.0\u5bfe\u5fdc |\r\n| acapy         | Ver.1.1.0  | CXP\u5bfe\u5fdc\u306b\u4f34\u3046\u5909\u66f4<br />AcapLib2 Ver.8.2.0\u5bfe\u5fdc |\r\n| cameracontrol | Ver.1.1.0  | \u521d\u7248(\u65b0\u898f\u8ffd\u52a0)                                |\r\n| graphicsbox   | Ver.1.1.0  |                                               |\r\n\r\n**\u3010\u4e3b\u306a\u5909\u66f4\u5185\u5bb9\u3011**\r\n\r\n- AcapLib2\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u30a2\u30c3\u30d7(Ver.8.2.0)\u306b\u4f34\u3046CoaXPress\u30dc\u30fc\u30c9\u5bfe\u5fdc\u306e\u4fee\u6b63\r\n- \u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u306e\u5bfe\u5fdc\r\n\r\n\r\n\r\n**\u3010acapy\u5909\u66f4\u70b9\u3011**\r\n\r\n- **\u95a2\u6570\u540d\u306e\u5909\u66f4**\r\n  \u30fbrefrect_param() \u304b\u3089 reflect_param() \u3078\u5909\u66f4\r\n  \r\n- **\u4e0b\u8a18\u3001\u30e1\u30bd\u30c3\u30c9\u306e\u8ffd\u52a0**\r\n\r\n  get_bit_assign_ex(), get_camera_category_feature_list(), get_camera_feature_info(), get_camera_property_list(), get_last_error_ex(), get_acapy_properties_text(),\r\n  regist_frame_end_callback(), regist_grab_end_callback(), regist_gpin_callback(), regist_overwrite_callback(), regist_timeout_callback(), regist_device_alm_callback(), get_enable_board_ch_list(), set_bit_assign_ex(), dispose()\r\n  \r\n- **\u4ee5\u4e0b\u3001\u30e1\u30bd\u30c3\u30c9\u306e\u524a\u9664**\r\n\r\n  print_acapy_values()\r\n  \r\n- **\u4e0b\u8a18\u3001\u69cb\u9020\u4f53\u306e\u8ffd\u52a0**\r\n\r\n  ACL_CAM_FEATURE_INFO, ACL_CAM_PROPERTY_LIST, ACL_CAM_FEATURE_LIST, \r\n  ACAPERRORINFOEX\r\n  \r\n- **\u4ee5\u4e0b\u3001\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u8ffd\u52a0**\r\n\r\n  connection_num, data_mask_ex, debug_print_enabled, \r\n  encoder_rlt_all_count, encoder_rlt_count, external_trigger_polarity, \r\n  fan_rpm, port_a_assign, port_b_assign, port_c_assign, port_d_assign, port_e_assign, \r\n  port_f_assign, port_g_assign, port_h_assign, port_i_assign, port_j_assign, \r\n  serial_read_wait_time, tag, alarm_status, cxp_camlink_timeout, cxp_bdlink_timeout,\r\n  freq_d, freq_e, freq_f, freq_g, freq_h, \r\n  freq_opt1, freq_opt2, freq_opt3, freq_opt4, freq_opt5, freq_opt6, freq_opt7, freq_opt8,\r\n  freq_ttl3, freq_ttl4, freq_ttl5, freq_ttl6, freq_ttl7, freq_ttl8,\r\n  tap_direction9, tap_direction10,\r\n  cxp_phy_error_count, frame_no, line_no\r\n  \r\n- **\u4ee5\u4e0b\u3001\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u524a\u9664**\r\n\r\n  cxp_acquision_start_address, cxp_acquision_start_value, cxp_acquision_stop_address, cxp_acquision_stop_value\r\n\r\n- **\u30d0\u30b0\u4fee\u6b63**\r\n\r\n  \u30fbread_frames()\u30e1\u30bd\u30c3\u30c9\u306b\u304a\u3044\u3066\u3001grab_start()\u30e1\u30bd\u30c3\u30c9\u306e\u521d\u56de\u8d77\u52d5\u6642\u306b\u4e0d\u8981\u306aoverwrite\u306e\u30ef\u30fc\u30cb\u30f3\u30b0\u304c\u767a\u751f\u3057\u3066\u3057\u307e\u3046\u306e\u3092\u4fee\u6b63\r\n  \r\n  \r\n\r\n**\u3010cameracontrol\u30af\u30e9\u30b9\u306e\u65b0\u898f\u8ffd\u52a0\u3011**\r\n\r\n\u30ab\u30e1\u30e9\u30d1\u30e9\u30e1\u30fc\u30bf\u306e\u53d6\u5f97\uff0f\u8a2d\u5b9a\u7528\u30af\u30e9\u30b9\u306e\u65b0\u898f\u8ffd\u52a0\r\n\u672c\u30d0\u30fc\u30b8\u30e7\u30f3\uff08Ver.1.1.0\uff09\u306b\u304a\u3044\u3066\u306f\u3001CoaXPress\u30ab\u30e1\u30e9\u306e\u307f\u5bfe\u5fdc\r\n\r\n\r\n\r\n**\u3010graphicsbox\u5909\u66f4\u70b9\u3011**\r\n\r\n\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u4e0a\u306e\u30ef\u30fc\u30cb\u30f3\u30b0\u4fee\u6b63\r\n\r\n\r\n\r\n**\u3010acaplib2(AcapLib2\u95a2\u6570\u5b9a\u7fa9\u30d5\u30a1\u30a4\u30eb)\u5909\u66f4\u70b9\u3011**\r\n\r\n- CoaXPress\u30dc\u30fc\u30c9\u306b\u3066\u30ab\u30e1\u30e9\u30d1\u30e9\u30e1\u30fc\u30bf\u306e\u53d6\u5f97\uff0f\u8a2d\u5b9a\u3092\u30b5\u30dd\u30fc\u30c8\r\n\r\n- **\u4e0b\u8a18\u3001\u95a2\u6570\u306e\u8ffd\u52a0**\r\n  \r\n  AcapSerialWriteBinary(), AcapSerialReadBinary(), AcapGetCameraCategoryFeatureList()\r\n  AcapGetCameraFeatureInfo(), AcapGetCameraPropertyList(), AcapGetLastErrorCodeEx()\r\n  AcapRegistCallback()\r\n  \r\n- **\u4e0b\u8a18\u3001\u69cb\u9020\u4f53\u306e\u8ffd\u52a0**\r\n  \r\n  ACL_CAM_FEATURE_INFO, ACL_CAM_PROPERTY_LIST, ACL_CAM_FEATURE_LIST, ACAPERRORINFOEX\r\n  \r\n- **\u4e0b\u8a18\u3001\u5b9a\u6570\u306e\u8ffd\u52a0**\r\n  \r\n  ACL_PORT_A_ASSIGN, ACL_PORT_B_ASSIGN, ACL_PORT_C_ASSIGN, ACL_PORT_D_ASSIGN, ACL_PORT_E_ASSIGN,\r\n  ACL_PORT_F_ASSIGN, ACL_PORT_G_ASSIGN, ACL_PORT_H_ASSIGN, ACL_PORT_I_ASSIGN, ACL_PORT_J_ASSIGN, ACL_DATA_MASK_EX,  ACL_EXT_POL, \r\n  ACL_DATA_MASK_EX, ACL_CXP_ACQUISITION_CONTROL, ACL_EXT_POL, ACL_CXP_CONNECTION_NUM,\r\n  ACL_CXP_TAPGEOMETRY, ACL_CXP_STREAM1_ID, ACL_CXP_STREAM2_ID, ACL_CXP_STREAM3_ID,\r\n  ACL_CXP_STREAM4_ID, ACL_CXP_STREAM5_ID, ACL_CXP_STREAM6_ID, \r\n  ACL_CXP_CAMLINK_TIMEOUT, ACL_CXP_BDLINK_TIMEOUT, \r\n  ACL_ALM_THERMAL, ACL_ALM_FAN, ACL_ALM_FPGA_TEMP, ACL_ALM_BOARD_TEMP\r\n  ACL_CXP_TAPGEOMETRY_1X_1Y, ACL_CXP_TAPGEOMETRY_1X_2YE_SINGLE, ACL_CXP_TAPGEOMETRY_1X_2YE_MULTI,\r\n  ACL_FREQ_E, ACL_FREQ_F, ACL_FREQ_G, ACL_FREQ_H, ACL_ALARM_STATUS, \r\n  ACL_FAN_RPM, ACL_INT_DEVICE_ALM, \r\n  ACL_3300_INTERNAL_GEN_LIBRARY_ERROR, ACL_GET_CAMERA_ACCESS_ERROR,\r\n  ACL_CAMERA_ACCESS_ERROR, ACL_NOT_SUPPORT_ERROR, ACL_3400_ERROR_ID, \r\n  ACL_36124_ERROR_ID, ACL_3666_ERROR_ID, ACL_36121_ERROR_ID, ACL_BD_ERR_K_CODE_CAL, ACL_BD_ERR_STREAM_SIZE, ACL_BD_ERR_DP_END, ACL_BD_ERR_DP_START, ACL_BD_ERR_DP_DUP,\r\n   ACL_BD_ERR_PACKET_LOSS, ACL_BD_ERR_CMD_ACK_FIFO_O, ACL_BD_ERR_IMD_FIFO_U, ACL_BD_ERR_IMD_FIFO_O, ACL_BD_ERR_IMH_FIFO_U,\r\n   ACL_BD_ERR_IMH_FIFO_O, ACL_BD_ERR_STREAM_FIFO_O, ACL_BD_ERR_DISPARITY, ACL_BD_ERR_8B10B_CODE, ACL_BD_ERR_STRAM_CRC,\r\n   ACL_BD_ERR_ACK_CRC, ACL_BD_ERR_ENC_LINE, ACL_BD_ERR_ENC, ACL_BD_ERR_FRAME, ACL_BD_ERR_LINE, ACL_BD_ERR_SCAN,\r\n  ACL_CXP_PHY_ERROR_COUNT, ACL_FRAME_NO, ACL_LINE_NO\r\n\r\n\r\n\r\n------\r\n\r\n## [Ver.1.0.0](https://pypi.org/project/acapy/1.0.0/)\r\n\r\n| \u30e2\u30b8\u30e5\u30fc\u30eb  | \u30d0\u30fc\u30b8\u30e7\u30f3 | \u5099\u8003                                 |\r\n| ----------- | ---------- | ------------------------------------ |\r\n| acaplib2    | Ver.1.0.0  | \u521d\u7248<br />AcapLib2 Ver.7.3.0\u306e\u307f\u5bfe\u5fdc |\r\n| acapy       | Ver.1.0.0  | \u521d\u7248<br />AcapLib2 Ver.7.3.0\u306e\u307f\u5bfe\u5fdc |\r\n| graphicsbox | Ver.1.0.0  | \u521d\u7248                                 |\r\n\r\n\u521d\u7248\r\n\r\n",
    "bugtrack_url": null,
    "license": "3-Clause BSD License",
    "summary": "acapy package (Python bindings for AVALDATA AcapLib2 )",
    "version": "1.1.0",
    "project_urls": {
        "Homepage": "https://faq-avaldata.dga.jp/faq_list.html?category=35"
    },
    "split_keywords": [
        "avaldata",
        "acapy",
        "acaplib2"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4bed6d38c72fc922a3bd1b82260797bc26fa974efa1a5208bcd09447206b6d61",
                "md5": "1a73cbe19987c52b93c624a2a54668e6",
                "sha256": "fd5dd830db7fad473a35ea93632b781c9b5a36254405a3517afcf18880041473"
            },
            "downloads": -1,
            "filename": "acapy-1.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1a73cbe19987c52b93c624a2a54668e6",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 114605,
            "upload_time": "2024-03-07T00:37:53",
            "upload_time_iso_8601": "2024-03-07T00:37:53.507573Z",
            "url": "https://files.pythonhosted.org/packages/4b/ed/6d38c72fc922a3bd1b82260797bc26fa974efa1a5208bcd09447206b6d61/acapy-1.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-07 00:37:53",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "acapy"
}
        
Elapsed time: 0.20391s