All Projects → pmunts → libsimpleio

pmunts / libsimpleio

Licence: other
Linux Simple I/O library

Programming Languages

Ada
118 projects
C#
18002 projects
pascal
1382 projects
c
50402 projects - #5 most used programming language
Makefile
30231 projects
C++
36643 projects - #6 most used programming language

Linux Simple I/O Library

libsimpleio is an attempt to encapsulate (as much as possible) the ugliness of Linux I/O device access. It provides services for the following types of I/O devices:

Although libsimpleio was originally intended for Linux microcomputers such as the Raspberry Pi, it can also be useful on larger desktop Linux systems.

The C wrapper functions exported by libsimpleio all follow the same uniform pattern:

  • All C wrapper functions are proper procedures (void f() in C).
  • All input arguments of primitive types (int, float, etc.) are passed by value.
  • All output arguments of primitive types are passed by reference (int *, float *, etc.).
  • All composite types are passed by reference.
  • int32_t is used wherever possible for int and bool arguments.

All of the C wrapper functions are declared between _BEGIN_STD_C and _END_STD_C for C++. Binding modules are provided for Ada, C#, and Free Pascal. Additional source code libraries are provided for Ada, C++, C#, and Free Pascal that define OOP (Object Oriented Programming) classes for libsimpleio.

Documentation

The user manual for libsimpleio is available at UserManual.pdf. Installation instructions are on pages 6 and 7.

The man pages specifying the libsimpleio API are available at libsimpleio.html.

Git Repository

The libsimpleio source code tree is available at:

https://github.com/pmunts/libsimpleio

Use the following command to clone it:

git clone https://github.com/pmunts/libsimpleio.git

Debian Package Repository

Prebuilt libsimpleio packages for Debian Linux are available at:

http://repo.munts.com/debian11

Alire Crates

libsimpleio.pdf
mcp2221.pdf
remoteio.pdf

Make With Ada Projects


Questions or comments to Philip Munts [email protected]

I am available for custom system development (hardware and software) of products using ARM Linux or other microcomputers.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].