Skip to main content

pypict: Python binding for Microsoft PICT

Project description

Travis PyPi

PyPICT

Python binding library for Microsoft PICT (Pairwise Independent Combinatorial Tool).

Requirements

  • Microsoft PICT

  • Python 2.7, 3.4, 3.5 or 3.6

Installation

Wheels (binary distribution) are available for Linux. PICT shared library and command are included in wheels.

$ pip install pypict

On other platforms, you need to build from source. PICT source tree is registered as a submodule of this repository. python setup.py build_pict will run make command to build PICT shared library inside the tree. You need to manually install the shared library and command, or set path of the tree to the appropriate environment variables (PATH, LD_LIBRARY_PATH, etc.)

$ git clone https://github.com/kmaehashi/pypict.git
$ cd pypict
$ git submodule init
$ git submodule update
$ python setup.py build_pict
$ pip install -U .
$ export PATH=${PWD}/pict:${PATH}
$ export LD_LIBRARY_PATH=${PWD}/pict:${LD_LIBRARY_PATH}

APIs

There are four different APIs provided in this library. Generally, you only need to use Tools API (pypict.tools).

  • Low-level API (pypict.capi) provides Python functions that map to each PICT C API function.

  • High-level API (pypict.api) wraps the low-level API to provide automatic memory management.

  • Tools API (pypict.tools) wraps the high-level API to provide convenient features.

  • Command API (pypict.cmd) is a thin wrapper for pict command. This API uses PICT command directly instead of PICT shared library.

Example

Here is an example usage of Tools API to generate pair-wise patterns from parameter set.

import pypict.tools

params = {
    "Type":          ["Single", "Span", "Stripe", "Mirror", "RAID-5"],
    "Size":          ["10", "100", "500", "1000", "5000", "10000", "40000"],
    "Format method": ["Quick", "Slow"],
    "File system":   ["FAT", "FAT32", "NTFS"],
    "Cluster size":  ["512", "1024", "2048", "4096", "8192", "16384", "32768", "65536"],
    "Compression":   ["On", "Off"],
}

for case in pypict.tools.from_dict(params):
    print(case)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypict-0.1.0.tar.gz (400.5 kB view details)

Uploaded Source

Built Distributions

pypict-0.1.0-cp36-cp36m-manylinux1_x86_64.whl (839.1 kB view details)

Uploaded CPython 3.6m

pypict-0.1.0-cp35-cp35m-manylinux1_x86_64.whl (835.3 kB view details)

Uploaded CPython 3.5m

pypict-0.1.0-cp34-cp34m-manylinux1_x86_64.whl (838.5 kB view details)

Uploaded CPython 3.4m

pypict-0.1.0-cp27-cp27mu-manylinux1_x86_64.whl (813.4 kB view details)

Uploaded CPython 2.7mu

pypict-0.1.0-cp27-cp27m-manylinux1_x86_64.whl (813.5 kB view details)

Uploaded CPython 2.7m

File details

Details for the file pypict-0.1.0.tar.gz.

File metadata

  • Download URL: pypict-0.1.0.tar.gz
  • Upload date:
  • Size: 400.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pypict-0.1.0.tar.gz
Algorithm Hash digest
SHA256 82e33baf3fb8597bd5681671770183044c81679b33472ee5ecae65e50f8717b7
MD5 e42beabcc0847e967eb675fefa3e27b5
BLAKE2b-256 f52341a5d4a6220ccab727a90188a87b22a360e12de0df6e31d6c0c57fb32e75

See more details on using hashes here.

File details

Details for the file pypict-0.1.0-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pypict-0.1.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 d7fbb604445c8245be85888c941ce3ebd00afc2ea23097a26dc0a372ee8e2e5b
MD5 3e78a2e41dad93447891a65fc9dbf026
BLAKE2b-256 7f6628a8811d99874b18320d10f5f5d0e28f83f7a22becb0d1a1d2a65ba5c591

See more details on using hashes here.

File details

Details for the file pypict-0.1.0-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pypict-0.1.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 1a83cc6f4f22fdb7a650e326b292b3d8fedcebe0877ca0d6991267e4a41f63d6
MD5 18b9d616dcb5b1e23ef284873a373986
BLAKE2b-256 15db246da7b78fddee865f31ee0a29542098d637ac12973b8a8718af9a687100

See more details on using hashes here.

File details

Details for the file pypict-0.1.0-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pypict-0.1.0-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 afe568eed4216779aa1e8872f3e044a855f50f2abdd6ec2179ae4c66f2c2d4d3
MD5 3086f45f11e8850472dd6e683a392741
BLAKE2b-256 7b9f916295b0170de6ba2973afd43409629b2fa85124946e4573609a5a56812a

See more details on using hashes here.

File details

Details for the file pypict-0.1.0-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pypict-0.1.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 7f87366940b61eb816a7deb0581b8e13fd9d19c4455ea3def0e5fd4710a95d21
MD5 40c439c047d03683f6dae5c6df4e8a6e
BLAKE2b-256 78bced37b824c0837844d9480e7d95464166b21caaabec2737fec259dc88e64d

See more details on using hashes here.

File details

Details for the file pypict-0.1.0-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for pypict-0.1.0-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 4f1f9f0ea341e1d2fd3f20ff27c8d200664f497e28c722ecabe887160c12b71c
MD5 71ef2ad4c57bb07ddb013e21c6bbae41
BLAKE2b-256 fa6232bd6122ed509b11ae05110d319525e26da6b1c21d93252d24df7d23e691

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page