![]() |
PUCLIB 1.4.0.0
PHOTRON USB Control Library
|
データ構造 | |
struct | PUC_DETECT_INFO |
デバイス検索結果を格納する構造体 [詳解] | |
struct | PUC_RESO_LIMIT_INFO |
解像度の限界値を格納する構造体 [詳解] | |
struct | PUC_FRAMERATE_LIMIT_INFO |
撮影速度の限界値を格納する構造体 [詳解] | |
struct | PUC_XFER_DATA_INFO |
転送データ情報を格納する構造体 [詳解] | |
マクロ定義 | |
#define | PUC_MAX_DEVICE 16 |
接続可能な最大デバイス数 [詳解] | |
#define | PUC_MAX_LEN 256 |
最大文字数 [詳解] | |
#define | PUC_Q_COUNT 64 |
量子化テーブルの個数(8*8) [詳解] | |
#define | PUC_MIN_RING_BUF_COUNT 4 |
連続転送時の最小リングバッファ数 [詳解] | |
#define | PUC_MAX_RING_BUF_COUNT 65535 |
連続転送時の最大リングバッファ数 [詳解] | |
#define | PUC_XFER_TIMEOUT_AUTO 0 |
デバイスから応答がない場合のタイムアウト時間(ms)を、撮影速度に応じて自動で設定するモード [詳解] | |
#define | PUC_XFER_TIMEOUT_INFINITE 0xFFFFFFFF |
デバイスから応答がない場合のタイムアウト時間(ms)を無限に設定するモード [詳解] | |
#define | PUC_SYNC_OUT_MAGNIFICATION_0_5 0 |
同期信号出力倍率0.5倍を表す定数 [詳解] | |
#define | PUC_MAX_DECODE_THREAD_COUNT 32 |
マルチスレッドでデコードする際のスレッド最大数を表す定数 [詳解] | |
#define | PUC_CHK_SUCCEEDED(res) (res == PUC_SUCCEEDED) |
エラーコードが正常時に正となるマクロ [詳解] | |
#define | PUC_CHK_FAILED(res) (res != PUC_SUCCEEDED) |
エラーコードが正常以外の時に正となるマクロ [詳解] | |
型定義 | |
typedef void * | PUC_HANDLE |
デバイスを表すハンドル [詳解] | |
typedef PUC_HANDLE * | PPUC_HANDLE |
デバイスを表すハンドルのポインタ [詳解] | |
typedef struct PUC_DETECT_INFO * | PPUC_DETECT_INFO |
typedef struct PUC_RESO_LIMIT_INFO * | PPUC_RESO_LIMIT_INFO |
typedef struct PUC_FRAMERATE_LIMIT_INFO * | PPUC_FRAMERATE_LIMIT_INFO |
typedef struct PUC_XFER_DATA_INFO * | PPUC_XFER_DATA_INFO |
typedef void(* | RECIEVE_CALLBACK) (PPUC_XFER_DATA_INFO, void *) |
連続転送中に呼ばれるコールバック関数の型 [詳解] | |
関数 | |
PUCRESULT WINAPI | PUC_Initialize () |
本ライブラリを初期化します。 [詳解] | |
PUCRESULT WINAPI | PUC_DetectDevice (PPUC_DETECT_INFO pDetectInfo) |
デバイスを検索します。 [詳解] | |
PUCRESULT WINAPI | PUC_OpenDevice (UINT32 nDeviceNo, PPUC_HANDLE pDeviceHandle) |
デバイスをオープンします。 [詳解] | |
PUCRESULT WINAPI | PUC_CloseDevice (PUC_HANDLE hDevice) |
デバイスをクローズします。 [詳解] | |
PUCRESULT WINAPI | PUC_GetColorType (PUC_HANDLE hDevice, PUC_COLOR_TYPE *pType) |
デバイスのカラー/モノクロ情報を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetDeviceName (PUC_HANDLE hDevice, UINT32 *pName) |
デバイスの名前を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetDeviceType (PUC_HANDLE hDevice, UINT32 *pType) |
デバイスのタイプを取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetDeviceVersion (PUC_HANDLE hDevice, UINT32 *pVersion) |
デバイスのバージョンを取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetSerialNo (PUC_HANDLE hDevice, UINT64 *pSerialNo) |
デバイスのシリアル番号を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetResolution (PUC_HANDLE hDevice, UINT32 *pWidth, UINT32 *pHeight) |
デバイスの解像度を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetMaxResolution (PUC_HANDLE hDevice, UINT32 *pCurMaxWidth, UINT32 *pCurMaxHeight) |
デバイスの現在の撮影速度で設定可能な最大解像度を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetResolutionLimit (PUC_HANDLE hDevice, PPUC_RESO_LIMIT_INFO pLimitInfo) |
デバイスの限界解像度、変更可能な最小単位を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetResolution (PUC_HANDLE hDevice, UINT32 nWidth, UINT32 nHeight) |
デバイスの解像度を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetQuantization (PUC_HANDLE hDevice, UINT32 nPoint, USHORT *pVal) |
デバイスに格納されている量子化テーブルデータを1つ取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetQuantization (PUC_HANDLE hDevice, UINT32 nPoint, USHORT nVal) |
デバイスに格納されている量子化テーブルデータを1つ書き換えます。 [詳解] | |
PUCRESULT WINAPI | PUC_GetFanState (PUC_HANDLE hDevice, PUC_MODE *pState) |
デバイスのファンの状態を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetFanState (PUC_HANDLE hDevice, PUC_MODE nState) |
デバイスのファンの状態を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetSyncInMode (PUC_HANDLE hDevice, PUC_SYNC_MODE *pMode, PUC_SIGNAL *pSignal) |
デバイスの同期信号入力モードを取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetSyncInMode (PUC_HANDLE hDevice, PUC_SYNC_MODE nMode, PUC_SIGNAL nSignal) |
デバイスの同期信号入力モードを設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetSyncOutSignal (PUC_HANDLE hDevice, PUC_SIGNAL *pSignal) |
デバイスの同期信号出力の極性を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetSyncOutSignal (PUC_HANDLE hDevice, PUC_SIGNAL nSignal) |
デバイスの同期信号出力の極性を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetSyncOutDelay (PUC_HANDLE hDevice, UINT32 *pDelay) |
デバイスの同期信号出力の遅延量をnsec単位で取得します。 100nsec未満は切り上げるため誤差が発生します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetSyncOutDelay (PUC_HANDLE hDevice, UINT32 nDelay) |
デバイスの同期信号出力の遅延量を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetSyncOutWidth (PUC_HANDLE hDevice, UINT32 *pWidth) |
デバイスの同期信号出力の出力幅を取得します。 100nsec未満は切り上げるため誤差が発生します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetSyncOutWidth (PUC_HANDLE hDevice, UINT32 nWidth) |
デバイスの同期信号出力の出力幅を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetSyncOutMagnification (PUC_HANDLE hDevice, UINT32 *pMagnification) |
同期信号の出力倍率を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetSyncOutMagnification (PUC_HANDLE hDevice, UINT32 nMagnification) |
同期信号の出力倍率を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetLEDMode (PUC_HANDLE hDevice, PUC_MODE *pMode) |
デバイスのLED状態を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetLEDMode (PUC_HANDLE hDevice, PUC_MODE nMode) |
デバイスのLED状態を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetSensorTemperature (PUC_HANDLE hDevice, UINT32 *pTemp) |
デバイスのセンサー温度を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetXferDataMode (PUC_HANDLE hDevice, PUC_DATA_MODE *pDataMode) |
デバイスの転送データモードを取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetXferDataMode (PUC_HANDLE hDevice, PUC_DATA_MODE nDataMode) |
デバイスの転送データモードを設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetXferDataSize (PUC_HANDLE hDevice, PUC_DATA_MODE nDataMode, UINT32 *pDataSize) |
デバイスから転送されるデータサイズを取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetMaxXferDataSize (PUC_HANDLE hDevice, PUC_DATA_MODE nDataMode, UINT32 *pDataSize) |
デバイスから転送されるデータの最大サイズを取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetSingleXferData (PUC_HANDLE hDevice, PPUC_XFER_DATA_INFO pXferData) |
デバイスから最新のライブ画像を1枚取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_BeginXferData (PUC_HANDLE hDevice, RECIEVE_CALLBACK callback, void *arg) |
連続転送を始めます。 [詳解] | |
PUCRESULT WINAPI | PUC_EndXferData (PUC_HANDLE hDevice) |
連続転送を終了します。 [詳解] | |
PUCRESULT WINAPI | PUC_IsXferring (PUC_HANDLE hDevice, BOOL *pIsXferring) |
連続転送中かどうかを確認します。 [詳解] | |
PUCRESULT WINAPI | PUC_ExtractSequenceNo (const PUCHAR pData, UINT32 nWidth, UINT32 nHeight, PUSHORT pSeqNo) |
圧縮画像データからシーケンス番号を抽出します。 [詳解] | |
PUCRESULT WINAPI | PUC_DecodeData (PUINT8 pDst, UINT32 nX, UINT32 nY, UINT32 nWidth, UINT32 nHeight, UINT32 nLineBytes, const PUINT8 pSrc, const PUSHORT pQVals) |
圧縮画像データを輝度値データに展開します。 [詳解] | |
PUCRESULT WINAPI | PUC_DecodeDataMultiThread (PUINT8 pDst, UINT32 nX, UINT32 nY, UINT32 nWidth, UINT32 nHeight, UINT32 nLineBytes, const PUINT8 pSrc, const PUSHORT pQVals, UINT32 nThreadCount) |
圧縮画像データを輝度値データに展開します。このデコード処理はマルチスレッドで行われます。 [詳解] | |
PUCRESULT WINAPI | PUC_DecodeDCTData (PINT16 pDst, UINT32 nX, UINT32 nY, UINT32 nWidth, UINT32 nHeight, UINT32 nLineBytes, const PUINT8 pSrc, const PUSHORT pQVals) |
圧縮画像データをDCT係数に展開します。 [詳解] | |
PUCRESULT WINAPI | PUC_DecodeDCData (PUINT8 pDst, UINT32 nBlockX, UINT32 nBlockY, UINT32 nBlockCountX, UINT32 nBlockCountY, const PUINT8 pSrc) |
圧縮画像データのDC成分を展開します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetRingBufferCount (PUC_HANDLE hDevice, UINT32 *pCount) |
連続転送時のリングバッファ数を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetRingBufferCount (PUC_HANDLE hDevice, UINT32 nCount) |
連続転送時のリングバッファ数を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetXferTimeOut (PUC_HANDLE hDevice, UINT32 *pSingleXferTimeOut, UINT32 *pContinuousXferTimeOut) |
デバイスの転送時のタイムアウト時間(ms)を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetXferTimeOut (PUC_HANDLE hDevice, UINT32 nSingleXferTimeOut, UINT32 nContinuousXferTimeOut) |
デバイスの転送時のタイムアウト時間(ms)を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetMaxFramerate (PUC_HANDLE hDevice, UINT32 *pFramerate) |
現在の解像度に対する最大撮影速度を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetFramerateLimit (PUC_HANDLE hDevice, PPUC_FRAMERATE_LIMIT_INFO pLimitInfo) |
限界撮影速度情報を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetFramerateShutter (PUC_HANDLE hDevice, UINT32 *pFramerate, UINT32 *pShutterSpeedFps) |
デバイスの撮影速度およびシャッター速度(1/fps)を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetFramerateShutter (PUC_HANDLE hDevice, UINT32 nFramerate, UINT32 nShutterSpeedFps) |
デバイスの撮影速度およびシャッター速度(1/fps)を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetExposeTime (PUC_HANDLE hDevice, UINT32 *pExpOnTime, UINT32 *pExpOffTime) |
デバイスの露光・非露光期間を取得します。 [詳解] | |
PUCRESULT WINAPI | PUC_GetMinExposeTime (PUC_HANDLE hDevice, UINT32 *pMinExpOnTime, UINT32 *pMinExpOffTime) |
デバイスの最小露光・非露光期間を取得します。 100nsec未満は切り上げるため誤差が発生します。 [詳解] | |
PUCRESULT WINAPI | PUC_SetExposeTime (PUC_HANDLE hDevice, UINT32 nExpOnTime, UINT32 nExpOffTime) |
デバイスの露光・非露光期間を設定します。 [詳解] | |
PUCRESULT WINAPI | PUC_ResetDevice (UINT32 nDeviceNo) |
デバイスをリセットします。 [詳解] | |
PUCRESULT WINAPI | PUC_ResetSequenceNo (PUC_HANDLE hDevice) |
シーケンス番号をリセットします [詳解] | |
#define PUC_CHK_FAILED | ( | res | ) | (res != PUC_SUCCEEDED) |
#define PUC_CHK_SUCCEEDED | ( | res | ) | (res == PUC_SUCCEEDED) |
#define PUC_XFER_TIMEOUT_AUTO 0 |
#define PUC_XFER_TIMEOUT_INFINITE 0xFFFFFFFF |
typedef struct PUC_DETECT_INFO * PPUC_DETECT_INFO |
typedef struct PUC_FRAMERATE_LIMIT_INFO * PPUC_FRAMERATE_LIMIT_INFO |
typedef PUC_HANDLE* PPUC_HANDLE |
typedef struct PUC_RESO_LIMIT_INFO * PPUC_RESO_LIMIT_INFO |
typedef struct PUC_XFER_DATA_INFO * PPUC_XFER_DATA_INFO |
typedef void* PUC_HANDLE |
typedef void(* RECIEVE_CALLBACK) (PPUC_XFER_DATA_INFO, void *) |
enum PUC_COLOR_TYPE |
enum PUC_DATA_MODE |
enum PUC_SIGNAL |
enum PUC_SYNC_MODE |
enum PUCRESULT |
エラーコード
PUCRESULT WINAPI PUC_BeginXferData | ( | PUC_HANDLE | hDevice, |
RECIEVE_CALLBACK | callback, | ||
void * | arg | ||
) |
連続転送を始めます。
コールバック関数の処理時間が長い場合、PUC_SetRingBufferCountで設定したリングバッファ内に順次画像データが格納されます。
リングバッファが一巡するとコールバック関数の処理完了待ちとなり、この間の受信データはバッファに格納されませんのでご注意ください。(フレーム落ち)
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | callback | SDK内部でデバイスから1枚画像を受信するたび、このコールバック関数が呼ばれます。 |
[in] | arg | コールバック関数に渡す引数 |
PUCRESULT WINAPI PUC_CloseDevice | ( | PUC_HANDLE | hDevice | ) |
デバイスをクローズします。
オープンしていないデバイスが指定されるとエラーを返します。
[in] | hDevice | クローズするデバイスハンドル |
PUCRESULT WINAPI PUC_DecodeData | ( | PUINT8 | pDst, |
UINT32 | nX, | ||
UINT32 | nY, | ||
UINT32 | nWidth, | ||
UINT32 | nHeight, | ||
UINT32 | nLineBytes, | ||
const PUINT8 | pSrc, | ||
const PUSHORT | pQVals | ||
) |
圧縮画像データを輝度値データに展開します。
[out] | pDst | 展開先バッファ。横幅は4の倍数に切り上げたサイズ分確保されている必要があります。(例:横幅が1246pxの場合、バッファは1248バイト確保されている必要あり) |
[in] | nX | 展開開始する左上座標X。0もしくは8の倍数である必要があります。 |
[in] | nY | 展開開始する左上座標Y。0もしくは8の倍数である必要があります。 |
[in] | nWidth | 展開する横幅 |
[in] | nHeight | 展開する高さ |
[in] | nLineBytes | 展開先バッファの横幅のバイト数 |
[in] | pSrc | 圧縮画像データ |
[in] | pQVals | 量子化テーブル |
PUCRESULT WINAPI PUC_DecodeDataMultiThread | ( | PUINT8 | pDst, |
UINT32 | nX, | ||
UINT32 | nY, | ||
UINT32 | nWidth, | ||
UINT32 | nHeight, | ||
UINT32 | nLineBytes, | ||
const PUINT8 | pSrc, | ||
const PUSHORT | pQVals, | ||
UINT32 | nThreadCount | ||
) |
圧縮画像データを輝度値データに展開します。このデコード処理はマルチスレッドで行われます。
[out] | pDst | 展開先バッファ。横幅は4の倍数に切り上げたサイズ分確保されている必要があります。(例:横幅が1246pxの場合、バッファは1248バイト確保されている必要あり) |
[in] | nX | 展開開始する左上座標X。0もしくは8の倍数である必要があります。 |
[in] | nY | 展開開始する左上座標Y。0もしくは8の倍数である必要があります。 |
[in] | nWidth | 展開する横幅 |
[in] | nHeight | 展開する高さ |
[in] | nLineBytes | 展開先バッファの横幅のバイト数 |
[in] | pSrc | 圧縮画像データ |
[in] | pQVals | 量子化テーブル |
[in] | nThreadCount | マルチスレッドで処理するスレッド数 |
PUCRESULT WINAPI PUC_DecodeDCData | ( | PUINT8 | pDst, |
UINT32 | nBlockX, | ||
UINT32 | nBlockY, | ||
UINT32 | nBlockCountX, | ||
UINT32 | nBlockCountY, | ||
const PUINT8 | pSrc | ||
) |
圧縮画像データのDC成分を展開します。
[out] | pDst | 展開先バッファ。デコード範囲に含まれるブロックの総数だけ確保する必要があります。 |
[in] | nBlockX | 展開開始するブロック座標X。 |
[in] | nBlockY | 展開開始するブロック座標Y。 |
[in] | nBlockCountX | 展開するX方向のブロック数 |
[in] | nBlockCountY | 展開するY方向のブロック数 |
[in] | pSrc | 圧縮画像データ |
PUCRESULT WINAPI PUC_DecodeDCTData | ( | PINT16 | pDst, |
UINT32 | nX, | ||
UINT32 | nY, | ||
UINT32 | nWidth, | ||
UINT32 | nHeight, | ||
UINT32 | nLineBytes, | ||
const PUINT8 | pSrc, | ||
const PUSHORT | pQVals | ||
) |
圧縮画像データをDCT係数に展開します。
[out] | pDst | 展開先バッファ。横幅は4の倍数に切り上げたサイズ分確保されている必要があります。(例:横幅が1246pxの場合、バッファは1248バイト確保されている必要あり) |
[in] | nX | 展開開始する左上座標X。0もしくは8の倍数である必要があります。 |
[in] | nY | 展開開始する左上座標Y。0もしくは8の倍数である必要があります。 |
[in] | nWidth | 展開する横幅 |
[in] | nHeight | 展開する高さ |
[in] | nLineBytes | 展開先バッファの横幅のバイト数 |
[in] | pSrc | 圧縮画像データ |
[in] | pQVals | 量子化テーブル |
PUCRESULT WINAPI PUC_DetectDevice | ( | PPUC_DETECT_INFO | pDetectInfo | ) |
デバイスを検索します。
既にデバイス番号が分かっている場合は、検索せずにオープンすることも可能です。
[out] | pDetectInfo | 見つかったデバイスの情報が格納されます。 |
PUCRESULT WINAPI PUC_EndXferData | ( | PUC_HANDLE | hDevice | ) |
連続転送を終了します。
[in] | hDevice | 操作対象のデバイスハンドル |
PUCRESULT WINAPI PUC_ExtractSequenceNo | ( | const PUCHAR | pData, |
UINT32 | nWidth, | ||
UINT32 | nHeight, | ||
PUSHORT | pSeqNo | ||
) |
圧縮画像データからシーケンス番号を抽出します。
[in] | pData | 圧縮画像データ |
[in] | nWidth | 画像の横幅 |
[in] | nHeight | 画像の高さ |
[out] | pSeqNo | 抽出したシーケンス番号の格納先 |
PUCRESULT WINAPI PUC_GetColorType | ( | PUC_HANDLE | hDevice, |
PUC_COLOR_TYPE * | pType | ||
) |
デバイスのカラー/モノクロ情報を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pType | カラー/モノクロ情報の格納先 |
PUCRESULT WINAPI PUC_GetDeviceName | ( | PUC_HANDLE | hDevice, |
UINT32 * | pName | ||
) |
デバイスの名前を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pName | デバイス名の格納先 |
PUCRESULT WINAPI PUC_GetDeviceType | ( | PUC_HANDLE | hDevice, |
UINT32 * | pType | ||
) |
デバイスのタイプを取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pType | デバイスタイプの格納先 |
PUCRESULT WINAPI PUC_GetDeviceVersion | ( | PUC_HANDLE | hDevice, |
UINT32 * | pVersion | ||
) |
デバイスのバージョンを取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pVersion | バージョン番号の格納先 |
PUCRESULT WINAPI PUC_GetExposeTime | ( | PUC_HANDLE | hDevice, |
UINT32 * | pExpOnTime, | ||
UINT32 * | pExpOffTime | ||
) |
デバイスの露光・非露光期間を取得します。
PUC_SetFramerateShutter関数で撮影速度およびシャッター速度が変更されると、本関数で返却される値も変わります。
露光・非露光期間を変えると同期信号の出力倍率はx1倍に戻ります。
100nsec未満は切り上げるため誤差が発生します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pExpOnTime | 露光期間(nsec単位)の格納先 |
[out] | pExpOffTime | 非露光期間(nsec単位)の格納先 |
PUCRESULT WINAPI PUC_GetFanState | ( | PUC_HANDLE | hDevice, |
PUC_MODE * | pState | ||
) |
デバイスのファンの状態を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | nState | ファン状態(ON/OFF)の格納先 |
PUCRESULT WINAPI PUC_GetFramerateLimit | ( | PUC_HANDLE | hDevice, |
PPUC_FRAMERATE_LIMIT_INFO | pLimitInfo | ||
) |
限界撮影速度情報を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pLimitInfo | 限界撮影速度の格納先 |
PUCRESULT WINAPI PUC_GetFramerateShutter | ( | PUC_HANDLE | hDevice, |
UINT32 * | pFramerate, | ||
UINT32 * | pShutterSpeedFps | ||
) |
デバイスの撮影速度およびシャッター速度(1/fps)を取得します。
PUC_SetExposeTime関数により露光・非露光期間を直接設定した場合、本関数で返される値は不正な値になりますのでご注意ください。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pFramerate | 撮影速度の格納先 |
[out] | pShutterSpeedFps | シャッター速度(1/fps)の格納先 |
PUCRESULT WINAPI PUC_GetLEDMode | ( | PUC_HANDLE | hDevice, |
PUC_MODE * | pMode | ||
) |
デバイスのLED状態を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pMode | LEDの状態(ON/OFF)の格納先 |
PUCRESULT WINAPI PUC_GetMaxFramerate | ( | PUC_HANDLE | hDevice, |
UINT32 * | pFramerate | ||
) |
現在の解像度に対する最大撮影速度を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pFramerate | 最大撮影速度の格納先 |
PUCRESULT WINAPI PUC_GetMaxResolution | ( | PUC_HANDLE | hDevice, |
UINT32 * | pCurMaxWidth, | ||
UINT32 * | pCurMaxHeight | ||
) |
デバイスの現在の撮影速度で設定可能な最大解像度を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pCurMaxWidth | 現在の撮影速度で設定可能な最大横解像度の格納先 |
[out] | pCurMaxHeight | 現在の撮影速度で設定可能な最大縦解像度の格納先 |
PUCRESULT WINAPI PUC_GetMaxXferDataSize | ( | PUC_HANDLE | hDevice, |
PUC_DATA_MODE | nDataMode, | ||
UINT32 * | pDataSize | ||
) |
デバイスから転送されるデータの最大サイズを取得します。
現在の解像度により結果が異なります。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nDataMode | データモード。ここで指定されたモードに対するデータサイズを返却します。 |
[out] | pDataSize | 最大データサイズの格納先 |
PUCRESULT WINAPI PUC_GetMinExposeTime | ( | PUC_HANDLE | hDevice, |
UINT32 * | pMinExpOnTime, | ||
UINT32 * | pMinExpOffTime | ||
) |
デバイスの最小露光・非露光期間を取得します。
100nsec未満は切り上げるため誤差が発生します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pMinExpOnTime | 最小露光期間(nsec単位)の格納先 |
[out] | pMinExpOffTime | 最小非露光期間(nsec単位)の格納先 |
PUCRESULT WINAPI PUC_GetQuantization | ( | PUC_HANDLE | hDevice, |
UINT32 | nPoint, | ||
USHORT * | pVal | ||
) |
デバイスに格納されている量子化テーブルデータを1つ取得します。
量子化テーブルの個数はPUC_Q_COUNTで定義されています。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nPoint | 量子化テーブルの位置 |
[out] | pVal | 量子化テーブルデータの格納先 |
PUCRESULT WINAPI PUC_GetResolution | ( | PUC_HANDLE | hDevice, |
UINT32 * | pWidth, | ||
UINT32 * | pHeight | ||
) |
デバイスの解像度を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pWidth | 横解像度の格納先 |
[out] | pHeight | 縦解像度の格納先 |
PUCRESULT WINAPI PUC_GetResolutionLimit | ( | PUC_HANDLE | hDevice, |
PPUC_RESO_LIMIT_INFO | pLimitInfo | ||
) |
デバイスの限界解像度、変更可能な最小単位を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pLimitInfo | 限界解像度、変更可能な最小単位の格納先 |
PUCRESULT WINAPI PUC_GetRingBufferCount | ( | PUC_HANDLE | hDevice, |
UINT32 * | pCount | ||
) |
連続転送時のリングバッファ数を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pCount | バッファ数の格納先 |
PUCRESULT WINAPI PUC_GetSensorTemperature | ( | PUC_HANDLE | hDevice, |
UINT32 * | pTemp | ||
) |
デバイスのセンサー温度を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pTemp | センサーの温度の格納先 |
PUCRESULT WINAPI PUC_GetSerialNo | ( | PUC_HANDLE | hDevice, |
UINT64 * | pSerialNo | ||
) |
デバイスのシリアル番号を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pSerialNo | シリアル番号の格納先 |
PUCRESULT WINAPI PUC_GetSingleXferData | ( | PUC_HANDLE | hDevice, |
PPUC_XFER_DATA_INFO | pXferData | ||
) |
デバイスから最新のライブ画像を1枚取得します。
連続転送中は画像が一部乱れる場合があります。
画像データのサイズはPUC_GetXferDataSizeで取得してください。
取得する画像の種類はPUC_SetXferDataModeで設定できます。
圧縮データはPUC_DecodeDataを使用することで輝度データに展開できます。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pXferData | 転送データの格納先。必要なメモリサイズはPUC_GetXferDataSizeで取得してください。 PUC_DATA_DECOMPRESSED_GRAYの場合、横幅は4の倍数に切り上げたサイズ分確保されている必要があります。 |
PUCRESULT WINAPI PUC_GetSyncInMode | ( | PUC_HANDLE | hDevice, |
PUC_SYNC_MODE * | pMode, | ||
PUC_SIGNAL * | pSignal | ||
) |
デバイスの同期信号入力モードを取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pMode | 同期信号入力モード(Internal/External)の格納先 |
[out] | pSignal | 極性(正極性/負極性)の格納先、外部同期設定時のみ取得できます。 |
PUCRESULT WINAPI PUC_GetSyncOutDelay | ( | PUC_HANDLE | hDevice, |
UINT32 * | pDelay | ||
) |
デバイスの同期信号出力の遅延量をnsec単位で取得します。
100nsec未満は切り上げるため誤差が発生します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pDelay | 遅延量(nsec単位)の格納先 |
PUCRESULT WINAPI PUC_GetSyncOutMagnification | ( | PUC_HANDLE | hDevice, |
UINT32 * | pMagnification | ||
) |
同期信号の出力倍率を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pMagnification | 出力倍率の格納先 |
PUCRESULT WINAPI PUC_GetSyncOutSignal | ( | PUC_HANDLE | hDevice, |
PUC_SIGNAL * | pSignal | ||
) |
デバイスの同期信号出力の極性を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pSignal | 極性(正極性/負極性)の格納先 |
PUCRESULT WINAPI PUC_GetSyncOutWidth | ( | PUC_HANDLE | hDevice, |
UINT32 * | pWidth | ||
) |
デバイスの同期信号出力の出力幅を取得します。
100nsec未満は切り上げるため誤差が発生します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pWidth | 出力幅(nsec単位)の格納先 |
PUCRESULT WINAPI PUC_GetXferDataMode | ( | PUC_HANDLE | hDevice, |
PUC_DATA_MODE * | pDataMode | ||
) |
デバイスの転送データモードを取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pDataMode | データモードの格納先 |
PUCRESULT WINAPI PUC_GetXferDataSize | ( | PUC_HANDLE | hDevice, |
PUC_DATA_MODE | nDataMode, | ||
UINT32 * | pDataSize | ||
) |
デバイスから転送されるデータサイズを取得します。
現在の解像度により結果が異なります。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nDataMode | データモード。ここで指定されたモードに対するデータサイズを返却します。 |
[out] | pDataSize | データサイズの格納先 |
PUCRESULT WINAPI PUC_GetXferTimeOut | ( | PUC_HANDLE | hDevice, |
UINT32 * | pSingleXferTimeOut, | ||
UINT32 * | pContinuousXferTimeOut | ||
) |
デバイスの転送時のタイムアウト時間(ms)を取得します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pSingleXferTimeOut | シングル転送のタイムアウト時間(ms)の格納先 |
[out] | pContinuousXferTimeOut | 連続転送のタイムアウト時間(ms)の格納先 |
PUCRESULT WINAPI PUC_Initialize | ( | ) |
本ライブラリを初期化します。
初回に1度だけ実行してください。
終了処理は本プロセス終了時に自動的に行われます。
PUCRESULT WINAPI PUC_IsXferring | ( | PUC_HANDLE | hDevice, |
BOOL * | pIsXferring | ||
) |
連続転送中かどうかを確認します。
[in] | hDevice | 操作対象のデバイスハンドル |
[out] | pIsXferring | 連続転送中の場合にTRUE、それ以外はFALSEを格納します。 |
PUCRESULT WINAPI PUC_OpenDevice | ( | UINT32 | nDeviceNo, |
PPUC_HANDLE | pDeviceHandle | ||
) |
デバイスをオープンします。
既にオープン中のデバイス番号を指定すると一度クローズされますのでご注意ください。
[in] | nDeviceNo | 検索したデバイス番号を指定します。 |
[out] | pDeviceHandle | オープンしたデバイスを操作するためのハンドルが格納されます。 |
PUCRESULT WINAPI PUC_ResetDevice | ( | UINT32 | nDeviceNo | ) |
デバイスをリセットします。
デバイスを認識しPUC_OpenDeviceに失敗する場合、この関数でデバイスをリセットして下さい
[in] | nDeviceNo | 検索したデバイス番号を指定します。 |
PUCRESULT WINAPI PUC_ResetSequenceNo | ( | PUC_HANDLE | hDevice | ) |
シーケンス番号をリセットします
[in] | hDevice | 操作対象のデバイスハンドル |
PUCRESULT WINAPI PUC_SetExposeTime | ( | PUC_HANDLE | hDevice, |
UINT32 | nExpOnTime, | ||
UINT32 | nExpOffTime | ||
) |
デバイスの露光・非露光期間を設定します。
デバイスのオープン時に設定はリセットされます。
本関数により露光・非露光期間を直接設定した場合、PUC_GetFramerateShutter関数で返される値は不正な値になります。
100nsec未満は切り上げるため誤差が発生します。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nExpOnTime | 露光期間(nsec単位) |
[in] | nExpOffTime | 非露光期間(nsec単位) |
PUCRESULT WINAPI PUC_SetFanState | ( | PUC_HANDLE | hDevice, |
PUC_MODE | nState | ||
) |
デバイスのファンの状態を設定します。
デバイスを再起動すると設定はリセットされます。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nState | ファン状態(ON/OFF) |
PUCRESULT WINAPI PUC_SetFramerateShutter | ( | PUC_HANDLE | hDevice, |
UINT32 | nFramerate, | ||
UINT32 | nShutterSpeedFps | ||
) |
デバイスの撮影速度およびシャッター速度(1/fps)を設定します。
デバイスのオープン時に設定はリセットされます。
本関数を実行すると、PUC_GetExposeTimeで返却される値も変更されます。
フレームレートを変えると同期信号の出力倍率はx1倍に戻ります。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nFramerate | 撮影速度 |
[in] | nShutterSpeedFps | シャッター速度(1/fps) |
PUCRESULT WINAPI PUC_SetLEDMode | ( | PUC_HANDLE | hDevice, |
PUC_MODE | nMode | ||
) |
デバイスのLED状態を設定します。
デバイスを再起動すると設定はリセットされます。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nMode | LEDの状態(ON/OFF) |
PUCRESULT WINAPI PUC_SetQuantization | ( | PUC_HANDLE | hDevice, |
UINT32 | nPoint, | ||
USHORT | nVal | ||
) |
デバイスに格納されている量子化テーブルデータを1つ書き換えます。
量子化テーブルの個数はPUC_Q_COUNTで定義されています。
デバイスを再起動すると設定はリセットされます。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nPoint | 量子化テーブルの位置 |
[in] | nVal | 設定する量子化テーブルデータ |
PUCRESULT WINAPI PUC_SetResolution | ( | PUC_HANDLE | hDevice, |
UINT32 | nWidth, | ||
UINT32 | nHeight | ||
) |
デバイスの解像度を設定します。
デバイスのオープン時に設定はリセットされます。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nWidth | 横解像度 |
[in] | nHeight | 縦解像度 |
PUCRESULT WINAPI PUC_SetRingBufferCount | ( | PUC_HANDLE | hDevice, |
UINT32 | nCount | ||
) |
連続転送時のリングバッファ数を設定します。
デバイスのオープン時に設定はリセットされます。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nCount | バッファ数 |
PUCRESULT WINAPI PUC_SetSyncInMode | ( | PUC_HANDLE | hDevice, |
PUC_SYNC_MODE | nMode, | ||
PUC_SIGNAL | nSignal | ||
) |
デバイスの同期信号入力モードを設定します。
デバイスを再起動すると設定はリセットされます。
同期信号入力モードを変えると出力倍率はx1倍に戻ります。
外部機器同期設定時、外部機器のばらつきを考慮した露光時間へ自動で調整されます。あらかじめ撮影したい露光時間と撮影速度に変更してから、外部機器同期を設定してください。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nMode | 同期信号入力モード(Internal/External) |
[in] | nSignal | 極性(正極性/負極性)、極性の指定はバージョン1.01以前のデバイスでは対応していません。 |
PUCRESULT WINAPI PUC_SetSyncOutDelay | ( | PUC_HANDLE | hDevice, |
UINT32 | nDelay | ||
) |
デバイスの同期信号出力の遅延量を設定します。
デバイスを再起動すると設定はリセットされます。
100nsec未満は切り上げるため誤差が発生します。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nDelay | 遅延量(nsec単位) |
PUCRESULT WINAPI PUC_SetSyncOutMagnification | ( | PUC_HANDLE | hDevice, |
UINT32 | nMagnification | ||
) |
同期信号の出力倍率を設定します。
デバイスのオープン時に設定はリセットされます。
撮影速度や露光・非露光期間を変更した場合もx1倍にリセットされます。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nMagnification | 出力倍率(例:x2の場合は2、x4の場合は4)0.5倍の場合はPUC_SYNC_OUT_MAGNIFICATION_0_5を指定 |
PUCRESULT WINAPI PUC_SetSyncOutSignal | ( | PUC_HANDLE | hDevice, |
PUC_SIGNAL | nSignal | ||
) |
デバイスの同期信号出力の極性を設定します。
デバイスを再起動すると設定はリセットされます。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nSignal | 極性(正極性/負極性) |
PUCRESULT WINAPI PUC_SetSyncOutWidth | ( | PUC_HANDLE | hDevice, |
UINT32 | nWidth | ||
) |
デバイスの同期信号出力の出力幅を設定します。
デバイスを再起動すると設定はリセットされます。
出力幅を変えると出力倍率はx1倍に戻ります。
100nsec未満は切り上げるため誤差が発生します。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nWidth | 同期信号の出力幅(nsec単位)。 |
PUCRESULT WINAPI PUC_SetXferDataMode | ( | PUC_HANDLE | hDevice, |
PUC_DATA_MODE | nDataMode | ||
) |
デバイスの転送データモードを設定します。
デバイスのオープン時に設定はリセットされます。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nDataMode | データモード |
PUCRESULT WINAPI PUC_SetXferTimeOut | ( | PUC_HANDLE | hDevice, |
UINT32 | nSingleXferTimeOut, | ||
UINT32 | nContinuousXferTimeOut | ||
) |
デバイスの転送時のタイムアウト時間(ms)を設定します。
デバイスのオープン時に設定はリセットされます。
PUC_XFER_TIMEOUT_AUTOを指定すると、撮影速度に応じて自動でタイムアウトを調整します。
PUC_XFER_TIMEOUT_INFINITEを指定すると、タイムアウトはなくなります。
[in] | hDevice | 操作対象のデバイスハンドル |
[in] | nSingleXferTimeOut | シングル転送のタイムアウト時間(ms) |
[in] | nContinuousXferTimeOut | 連続転送のタイムアウト時間(ms) |