diff --git a/.gitignore b/.gitignore index 9e47b37..18bf290 100644 --- a/.gitignore +++ b/.gitignore @@ -61,3 +61,6 @@ dkms.conf bin obj logs +*.layout +*.depend +*.user \ No newline at end of file diff --git a/README-Eng.md b/README-Eng.md new file mode 100644 index 0000000..555de3c --- /dev/null +++ b/README-Eng.md @@ -0,0 +1,24 @@ +# Basic-Geometry-c + +## Library of basic geometric computations + +[Версия на русском языке / Russian version](./README.md) + +Programming language: C (C99) + +The main goals of development of the library were: + +1. Performance +2. Functionality +3. Versatility + +Performance was the main goal of making of the library. That fact affected +the implementation features of the library. + +For example, the main way to return data structures as a function result +was chosen to be returning via a parameter, which avoids redundant copying +of data through the call stack. + +Also the majority of functions were made as inline function. That allows +a compiller to replace a call of some function onto the body of that +function. diff --git a/README.md b/README.md index 6036c56..680a327 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,25 @@ -# bgc-c +# Basic-Geometry-c -Библиотека базовых геометрических вычислений на языке Си \ No newline at end of file +## Библиотека базовых геометрических вычислений + +(English: library of basic geometric computations) + +[English version / версия на английском языке](./README-Eng.md) + +Язык программирования: Си (C99) + +Основными целями разработки данной библиотеки были: + +1. Производительность +2. Функциональность +3. Универсальность + +Производительность была на первом месте, что оказало влияние на особенности +реализации библиотеки. + +Например, в качестве основного способа возврата структур данных в качестве +результата выполнения функции был выбран возврат через параметр, что позволяет +избежать избыточного копирования данных через стек вызова. + +Также большинство функций выполнены как inline, давая возможность компилятору +заменять вызов функции на тело функции.