Libs-dev: Difference between revisions

From KolibriOS wiki
Jump to navigation Jump to search
(Separate libio subpage)
mNo edit summary
Line 9: Line 9:


==libini==
==libini==
 
''Main article: [[Libs-dev/libini]]''


==libimg==
==libimg==
 
''Main article: [[Libs-dev/libimg]]''


==libgfx==
==libgfx==
 
''Main article: [[Libs-dev/libgfx]]''


=Libraries tests=
=Libraries tests=

Revision as of 05:42, 23 July 2010

Introduction

Libs-dev is a system libraries collection targeting different problematic programming areas.

Libraries description

Libs-dev now consists of four common-use libraries: libio (input-output programming), libini (INI-like files support), libimg (graphics files manipulation) and libgfx (drawing convenience API).

libio

Main article: Libs-dev/libio

libini

Main article: Libs-dev/libini

libimg

Main article: Libs-dev/libimg

libgfx

Main article: Libs-dev/libgfx

Libraries tests

There's a .test directory containing different libraries tests. They are designed to be independent and should generate (or contain pre-generated) test data which leads to same results disregarding the order tests are executed in.

Coding style

All the public functions are contained in <library name>.asm file, supporting public declarations in <library name>.inc file. All other library-specific (private and auxilary) core functions and declarations are separated into <library name>_p.asm and <library name>_p.inc files. There could also be separate files with self-describing names providing additional functionality.

Functions located in public source files use naming concention as in <function namespace name>.<function name>. Functions located in private source files use naming convention as in <library name>._.<function name>. This allows to separate libraries code when linking statically.

Specific type of function description comments is being used allowing documentation to be generated automatically in the future.