Metadata-Version: 2.4
Name: ikkLink
Version: 0.0.3
Summary: Python library for controlling and monitoring InsightScan from external applications
Author-email: ikk Maintainer <maintainer@insightkk.net>
License-Expression: MIT
Project-URL: Homepage, https://insightkk.net/ikkLink/
Project-URL: Documentation, https://insightkk.net/ikkLink/
Project-URL: Issues, https://github.com/Insight-kk/ikkLink/issues
Project-URL: Source, https://github.com/Insight-kk/ikkLink
Keywords: insightscan,inspection,automation,tcp,control
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cantok>=0.0.32
Requires-Dist: colorama>=0.4.6
Provides-Extra: camera
Requires-Dist: numpy>=1.20.0; extra == "camera"
Requires-Dist: opencv-python>=4.8.0; extra == "camera"
Dynamic: license-file

<p align="center">
	<img src="images/logo/ikkLink-full.svg" alt="ikkLink" width="480">
</p>

# ikkLink

ikkLink は InsightScan に接続して、外部アプリケーションから制御と状態監視を行うための Python ライブラリです。

基本的な利用では `from ikkLink import InsightScanLink` を推奨します。

既存コードとの互換のため、`insightScanLink` も当面は利用できます。

## Install

```bash
pip install ikkLink
```

## Quick Start

```python
import asyncio

from ikkLink import InsightScanLink


async def main() -> None:
    link = InsightScanLink(reconnect=True)
    connected = await link.Connect(host="127.0.0.1", port=53301)
    if not connected:
        raise RuntimeError("InsightScan に接続できませんでした")

    await link.GetStatus()
    print(f"state={link.State.Code} name={link.State.Name}")

    if not link.IsReadyForRecipe():
        await link.Init()

    await link.close()


asyncio.run(main())
```

