]> rtime.felk.cvut.cz Git - ulut.git/log
ulut.git
12 months agouLUt: do not include malloc.h, use stdlib.h through ul_utmalloc.h. master
Pavel Pisa [Fri, 31 Mar 2023 19:33:01 +0000 (21:33 +0200)]
uLUt: do not include malloc.h, use stdlib.h through ul_utmalloc.h.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
12 months agouLUt: do not build for Linux kernel mode by default.
Pavel Pisa [Fri, 31 Mar 2023 19:31:36 +0000 (21:31 +0200)]
uLUt: do not build for Linux kernel mode by default.

The other component requiring uLUt buil for kernel
can demand that mode build by providing

  CONFIG_OC_ULUTKERN=y

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
4 years agouLUt: opengroup specifies that malloc is defined in stdlib.h.
Pavel Pisa [Fri, 23 Aug 2019 16:50:38 +0000 (18:50 +0200)]
uLUt: opengroup specifies that malloc is defined in stdlib.h.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
6 years agouLUt: remove abundant inline which prevents linking after build by GCC-6.
Pavel Pisa [Fri, 4 Aug 2017 12:28:25 +0000 (14:28 +0200)]
uLUt: remove abundant inline which prevents linking after build by GCC-6.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
8 years agoAdapted to changed inline function inclusion in gcc output.
Petr Porazil [Tue, 24 Nov 2015 13:41:27 +0000 (14:41 +0100)]
Adapted to changed inline function inclusion in gcc output.

Signed-off-by: Petr Porazil <porazil@volny.cz>
8 years agouLUt: hash table add _get_count and remove unimplemented _delete_node prototype.
Pavel Pisa [Thu, 5 Nov 2015 11:05:53 +0000 (12:05 +0100)]
uLUt: hash table add _get_count and remove unimplemented _delete_node prototype.

The prototype cause warning when UL_HASTAB_CUST_NODE_INT_DEC_SCOPE
is used with static inline.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
8 years agouLUt: ul_dbuff_cat do at least partial copy if a space for all data cannot be allocated.
Pavel Pisa [Sat, 17 Oct 2015 16:45:31 +0000 (18:45 +0200)]
uLUt: ul_dbuff_cat do at least partial copy if a space for all data cannot be allocated.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
8 years agouLUt: ul_dbuff replace old years unused vca_log to ul_log when debugging is enabled.
Pavel Pisa [Sat, 17 Oct 2015 16:43:47 +0000 (18:43 +0200)]
uLUt: ul_dbuff replace old years unused vca_log to ul_log when debugging is enabled.

The code debugging has not been used/required for years
so left vca_log lines has not beet spotted.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
8 years agoAdd missing #include
Michal Sojka [Tue, 7 Jul 2015 09:52:57 +0000 (11:52 +0200)]
Add missing #include

It caused compilation error in the RPP project, where this file is used.

9 years agouLUt: add constant modifier to key pointer for GAVL variant with repeated items allowed.
Pavel Pisa [Fri, 10 Apr 2015 13:39:57 +0000 (15:39 +0200)]
uLUt: add constant modifier to key pointer for GAVL variant with repeated items allowed.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agouLUt: hash table correct leftover hard-coded prefix from testing.
Pavel Pisa [Thu, 9 Apr 2015 14:20:24 +0000 (16:20 +0200)]
uLUt: hash table correct leftover hard-coded prefix from testing.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agoDo not use standard defined __alignof__ for structure filed alignment determination.
Pavel Pisa [Thu, 6 Nov 2014 11:01:41 +0000 (12:01 +0100)]
Do not use standard defined __alignof__ for structure filed alignment determination.

The problem is that __alignof__ returns optimal alignment for type
for performance but that can differ from actual ABI specified
alignment for structure field of respective type type.

I.e. x86_64 double structure field alignment is 4 per ABI definition
but preferred alignment for performance is 8.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agoCorrect some more warnings and cleanup.
Pavel Pisa [Sun, 19 Oct 2014 00:11:05 +0000 (02:11 +0200)]
Correct some more warnings and cleanup.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agoSilent some GCC warnings.
Pavel Pisa [Sat, 18 Oct 2014 23:54:30 +0000 (01:54 +0200)]
Silent some GCC warnings.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agoDefine UL_ALIGNOF macro to allow adjustments for different compilers.
Pavel Pisa [Sun, 14 Sep 2014 00:04:32 +0000 (02:04 +0200)]
Define UL_ALIGNOF macro to allow adjustments for different compilers.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agoQualifiers removal macro which allows NULL - UL_CAST_UNQX_NULL_ALLOWED.
Pavel Pisa [Thu, 11 Sep 2014 16:45:36 +0000 (18:45 +0200)]
Qualifiers removal macro which allows NULL - UL_CAST_UNQX_NULL_ALLOWED.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agoMore portable and straightforward UL_CAST_UNQX implementation.
Pavel Pisa [Fri, 5 Sep 2014 18:12:28 +0000 (20:12 +0200)]
More portable and straightforward UL_CAST_UNQX implementation.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agoConst and volatile qualifiers removal (UL_CAST_UNQX) which supports global initializers.
Pavel Pisa [Fri, 5 Sep 2014 17:25:08 +0000 (19:25 +0200)]
Const and volatile qualifiers removal (UL_CAST_UNQX) which supports global initializers.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
10 years agouLUt: add methods to use data queue FIFO for random data in kept history range access.
Pavel Pisa [Tue, 12 Nov 2013 01:49:17 +0000 (02:49 +0100)]
uLUt: add methods to use data queue FIFO for random data in kept history range access.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
10 years agoExtend data queue FIFO to provide function which overwrites FIFO tail.
Pavel Pisa [Sun, 20 Oct 2013 22:24:30 +0000 (00:24 +0200)]
Extend data queue FIFO to provide function which overwrites FIFO tail.

The generation of function named PREFIX_put_no_check() is added
to the set of UL_DQFIFO_CUST_DEC() generated functions.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoSpecify ulut library requirement for each test program separately. ul_drv-1.0.0-release
Pavel Pisa [Sun, 20 Jan 2013 22:39:08 +0000 (23:39 +0100)]
Specify ulut library requirement for each test program separately.

The use of "lib_LOADLIBES = ulut" for whole directory result
in attempt to link library ulut into build ulut library
when shared libraries build is selected. This result in circular
make dependency for some tools version.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoFix compilation on GCC 4.7 for ARM ABI.
Pavel Pisa [Sun, 20 Jan 2013 14:25:04 +0000 (15:25 +0100)]
Fix compilation on GCC 4.7 for ARM ABI.

Use va_start to initialize empty va_list properly.
The solution has quite high overhead but
other future proof portable solution has not been found.

Problem was found and initial workaround has been provided
by Martin Meloun.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoAttempt to define safe cast mechanism to remove const and volatile qualifiers.
Pavel Pisa [Sun, 6 Jan 2013 15:47:27 +0000 (16:47 +0100)]
Attempt to define safe cast mechanism to remove const and volatile qualifiers.

The mechanism works but only when used inside function.
But the most of problematic assignments are in structures
initializers in our projects.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoInclude macro to allow check for compile time bugs.
Pavel Pisa [Sun, 6 Jan 2013 14:02:49 +0000 (15:02 +0100)]
Include macro to allow check for compile time bugs.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoAdd format string and parameters match checking for ul_dbuff_printf calls.
Pavel Pisa [Fri, 28 Dec 2012 23:16:39 +0000 (00:16 +0100)]
Add format string and parameters match checking for ul_dbuff_printf calls.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoFix non-typesafe/void * variant of GAVL to support non-unique keys.
Pavel Pisa [Thu, 27 Dec 2012 11:15:24 +0000 (12:15 +0100)]
Fix non-typesafe/void * variant of GAVL to support non-unique keys.

The original void * version of the gavl_insert() does
not work correctly when insert mode with non-unique keys
(GAVL_FAFTER) is requested.

Bug reported by Rostislav Lisovy.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoZero count of consumers/tail readers of CBUFF is handled now.
Pavel Pisa [Mon, 26 Nov 2012 18:02:15 +0000 (19:02 +0100)]
Zero count of consumers/tail readers of CBUFF is handled now.

The CBUFF semantic is changed so that the first
(re-)attached reader is supplied by all messages
held in buffer during time when no reader is attached.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoInitial version of CBUFF tail detach version.
Pavel Pisa [Mon, 26 Nov 2012 00:55:03 +0000 (01:55 +0100)]
Initial version of CBUFF tail detach version.

The tail/consumer disconnection is quite problematic
because no message intended to be consumed by tail
can be left in the buffer because else i prevent
reuse of the buffer space.

The ul_cbuff_tail_detach_onestep() function returns
value 0 if there is no message left and tail is disconnected.
Value 1 indicates that at least one more iterations is required.
Value 2 is returned if there are partially filed messages
preventing immediate next step. Wait for consumer
wake event is required in this case.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoSimplify CBUFF tail/consumer attachment.
Pavel Pisa [Sun, 25 Nov 2012 22:08:13 +0000 (23:08 +0100)]
Simplify CBUFF tail/consumer attachment.

Consumer does receives only messages which are allocated
later than tail is attached. CBUFF requires at least
one consumer/tail reader before buffer is filled.
The previous attempt to allow special handling
of zero readers situation was nor used nor tested
and was not correct. Code removed.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
11 years agoul_dbuffprintf omitted from minimal build because vsnprintf is not supported by SDCC.
Pavel Pisa [Sat, 21 Jul 2012 14:14:11 +0000 (16:14 +0200)]
ul_dbuffprintf omitted from minimal build because vsnprintf is not supported by SDCC.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
12 years agoOMK rules for uLUt standalone build updated from RTIME repository.
Pavel Pisa [Tue, 27 Mar 2012 20:27:40 +0000 (22:27 +0200)]
OMK rules for uLUt standalone build updated from RTIME repository.

OMK version version 0.2-97-g532aeb1

More info on OMK project pages
http://rtime.felk.cvut.cz/omk/

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
12 years agoUpdates to support SDCC 3.1.4+ new build-in defines.
Pavel Pisa [Wed, 21 Mar 2012 22:43:47 +0000 (23:43 +0100)]
Updates to support SDCC 3.1.4+ new build-in defines.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
12 years agouLUt: Get rid of compiler warnings in custom GAVL delete functions.
Pavel Pisa [Sun, 19 Feb 2012 16:09:02 +0000 (17:09 +0100)]
uLUt: Get rid of compiler warnings in custom GAVL delete functions.

Based on Michal Sojka's request but this solution is consistent
with other functions and allows to propagate errors
form gavl_delete_primitive if they would be detected
even there in future.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
12 years agouLUt: Function to append printf formatted text to dbuff moved to common library.
Pavel Pisa [Sun, 19 Feb 2012 15:58:37 +0000 (16:58 +0100)]
uLUt: Function to append printf formatted text to dbuff moved to common library.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
12 years agoRemove traces of historical use of CVS version control system. ul_drv-0.8.3-release
Pavel Pisa [Sat, 27 Aug 2011 15:54:05 +0000 (17:54 +0200)]
Remove traces of historical use of CVS version control system.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
12 years agoBe more explicit in overflow arithmetic compare to avoid possible undefined behavior.
Pavel Pisa [Sat, 21 May 2011 23:50:22 +0000 (01:50 +0200)]
Be more explicit in overflow arithmetic compare to avoid possible undefined behavior.

The C standard declares modulo arithmetic behavior only for unsigned
types.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
13 years agouLUt library header files can be moved to include/ulut subdirectory.
Pavel Pisa [Fri, 21 Jan 2011 23:41:28 +0000 (00:41 +0100)]
uLUt library header files can be moved to include/ulut subdirectory.

If the option
  CONFIG_OC_ULUT_INCDIR=y
is selected, the copy of uLUt library header files
is added into "ulut" subdirectory of include location
but copy in commonly used top level location is
provided as well.

If the
  CONFIG_OC_ULUT_INCDIRONLY=y
option is enabled the the uLUt header files are placed
only in "ulut" subdirectory location.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
13 years agoSDCC 3.0 can build uLUt but its GCSE optimization goes mad for gavl_balance_one.
Pavel Pisa [Fri, 5 Nov 2010 13:13:18 +0000 (14:13 +0100)]
SDCC 3.0 can build uLUt but its GCSE optimization goes mad for gavl_balance_one.

The common expression elimination optimization
leads to allocation of whole internal memory
when enabled for gavl_balance_one function.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
13 years agoDocument ul_log_domain_arg2levels()
Michal Sojka [Fri, 21 May 2010 14:47:26 +0000 (16:47 +0200)]
Document ul_log_domain_arg2levels()

14 years agoUnified DLL/shared library export import symbol visibility specification.
Pavel Pisa [Tue, 6 Apr 2010 19:04:32 +0000 (21:04 +0200)]
Unified DLL/shared library export import symbol visibility specification.

This is more or less how Wikipedia example suggests the macros
names and use.

To change default symbols visibility next options should be
specified in config.omk file.

CFLAGS += -fvisibility=hidden
LDLAGS += -fvisibility=hidden

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt: do not use reentrant keyword for Z80 SDCC target. ul_drv-0.8.1-release
Pavel Pisa [Sun, 24 Jan 2010 22:54:01 +0000 (23:54 +0100)]
uLUt: do not use reentrant keyword for Z80 SDCC target.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agoulut: global hash tables size-step table variables have to be declared as extern.
Pavel Pisa [Sat, 23 Jan 2010 15:31:28 +0000 (16:31 +0100)]
ulut: global hash tables size-step table variables have to be declared as extern.

Required for SDCC build.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt: corrected function scope of hash table next by iterator.
Pavel Pisa [Thu, 31 Dec 2009 11:46:05 +0000 (12:46 +0100)]
uLUt: corrected function scope of hash table next by iterator.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt: adjust hash table size even for delete_key.
Pavel Pisa [Thu, 31 Dec 2009 10:49:30 +0000 (11:49 +0100)]
uLUt: adjust hash table size even for delete_key.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt: hash table corrected decision about resize in delete operation.
Pavel Pisa [Thu, 31 Dec 2009 10:37:39 +0000 (11:37 +0100)]
uLUt: hash table corrected decision about resize in delete operation.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt: more elaborated hash table sizing implemented.
Pavel Pisa [Thu, 31 Dec 2009 09:55:44 +0000 (10:55 +0100)]
uLUt: more elaborated hash table sizing implemented.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt: included some basic timing of hash support
Pavel Pisa [Wed, 30 Dec 2009 21:12:11 +0000 (22:12 +0100)]
uLUt: included some basic timing of hash support

Test run for 10k 100k 1M 10M and 20M of items.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt: UL_NOPSTATEMENT defined
Pavel Pisa [Wed, 30 Dec 2009 21:09:53 +0000 (22:09 +0100)]
uLUt: UL_NOPSTATEMENT defined

This construct can be used as macro parameter,
when macro argument is used as C language statement
inserted into generated code and in concrete
macro instantiation is no use for the functionality.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt extended by experimental hash table support.
Pavel Pisa [Wed, 30 Dec 2009 21:05:38 +0000 (22:05 +0100)]
uLUt extended by experimental hash table support.

The code is based on combination of array indexed
by masked value computed by hash function and GAVL
tree for each of array indexes. This combination
should provide good performance even if the hash
function distribute items non-uniformly for same cases.
Solution has drawback in relatively big memory
overhead required in each inserted item to provide
space for tree node.

The API, above all parameters to UL_HASTAB_CUST_NODE_INT_IMP,
will change probably.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agoUpdated ul_htimer callback data type to be portable to 64 bit Windows. ul_drv-0.8.0-release
Pavel Pisa [Tue, 1 Dec 2009 17:45:39 +0000 (18:45 +0100)]
Updated ul_htimer callback data type to be portable to 64 bit Windows.

The 64-bit Windows use LLP64 where pointer value does not
fit in long type variable. On the other hand, on 8 and 16
bit machines uintptr_t can be smaller than long so conditional
type definition is used now.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt allows minimal build suitable for mcs51 SDCC target.
Pavel Pisa [Fri, 27 Nov 2009 01:18:13 +0000 (02:18 +0100)]
uLUt allows minimal build suitable for mcs51 SDCC target.

The mcs51 build requires SDCC with matured inline support
and C99 support. The proposed inline fixes can be found
in discussion under bug #1767885

  Parameters lost from scope of intermediate inline function

Next options has been included in config.omk to build this
minimal uLUt version.

CONFIG_OC_ULUT=y
CONFIG_OC_ULUTMINIMAL=y

CFLAGS  += --std-c99

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agoNot so much successful attempt to update equations to MathML in GAVL documentation.
Pavel Pisa [Sun, 8 Nov 2009 17:45:44 +0000 (18:45 +0100)]
Not so much successful attempt to update equations to MathML in GAVL documentation.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt documentation converted to XML DocBook variant.
Pavel Pisa [Sun, 8 Nov 2009 16:36:10 +0000 (17:36 +0100)]
uLUt documentation converted to XML DocBook variant.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agoAdd support to compile uLUt submodule separately.
Pavel Pisa [Sun, 8 Nov 2009 12:33:48 +0000 (13:33 +0100)]
Add support to compile uLUt submodule separately.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agouLUt: incorporated changes to compile GAVL and GSA by SDCC.
Pavel Pisa [Sat, 7 Nov 2009 22:41:27 +0000 (23:41 +0100)]
uLUt: incorporated changes to compile GAVL and GSA by SDCC.

The patches attached to the SDCC bug #1767885 are required
to fix functions inlining problems.

  #1767885 Parameters lost from scope of intermediate inline function

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agoIncluded documentation for uLUt library.
Pavel Pisa [Fri, 6 Nov 2009 12:59:16 +0000 (13:59 +0100)]
Included documentation for uLUt library.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
14 years agoIntegration fixes after uLan project splitting into submodules.
Pavel Pisa [Thu, 5 Nov 2009 16:55:27 +0000 (17:55 +0100)]
Integration fixes after uLan project splitting into submodules.

14 years agouLUt: added definition for weak attribute.
ppisa [Thu, 29 Oct 2009 18:54:52 +0000 (18:54 +0000)]
uLUt: added definition for weak attribute.

14 years agoAdd possibility to specify GAVL, GSA and HTIMER generated symbols scope.
ppisa [Tue, 20 Oct 2009 09:55:29 +0000 (09:55 +0000)]
Add possibility to specify GAVL, GSA and HTIMER generated symbols scope.

This allows to GSA_CUST_DEC_SCOPE declaration macro variant
where the first argument can select static scope or explicit
functions visibility
UL_ATTR_UNUSED static
UL_EXPORT
UL_DLLLOCAL
UL_DLLPUBLIC
The DLL symbol visibility macros are defined in ul_udexport.h
header file. Same GAVL, GSA and HTIMER implementation macro
is used as for case of declaration with default functions scope.

14 years agoCorrected pointer type in custom static GSA generated functions.
ppisa [Fri, 21 Aug 2009 12:04:32 +0000 (12:04 +0000)]
Corrected pointer type in custom static GSA generated functions.

14 years agoAdded ul_logreg_for_each_domain()
wentasah [Mon, 10 Aug 2009 12:06:01 +0000 (12:06 +0000)]
Added ul_logreg_for_each_domain()

This functions walks through the list of all registered log domains and
calls a callback on it. It can be used to print the list of domains for
a user.

14 years agoAdded UL_ATTR_REENTRANT attribute into defines for SDCC integration.
ppisa [Mon, 10 Aug 2009 07:25:11 +0000 (07:25 +0000)]
Added UL_ATTR_REENTRANT attribute into defines for SDCC integration.

14 years agoCorrected delete_all for static version of GSA.
ppisa [Fri, 19 Jun 2009 11:32:24 +0000 (11:32 +0000)]
Corrected delete_all for static version of GSA.

14 years agoAdded support for static GSA arrays with insert/delete functionality.
ppisa [Fri, 19 Jun 2009 11:00:32 +0000 (11:00 +0000)]
Added support for static GSA arrays with insert/delete functionality.

Such array can utilize preallocated items pointers array.
This means, that GSA_STATIC_CUST_DEC can be used with limited
insert/delete functionality. The GSA_CONST_CUST_DEC should
be used for strictly constant arrays with compile time filled data
instead.

14 years agoAdded wrapper to register single domain and provide public initialization function.
ppisa [Tue, 26 May 2009 00:53:02 +0000 (00:53 +0000)]
Added wrapper to register single domain and provide public initialization function.

14 years agoRecognize underscore character as part of logdomain names during parsing.
ppisa [Mon, 25 May 2009 21:48:03 +0000 (21:48 +0000)]
Recognize underscore character as part of logdomain names during parsing.

14 years agoAdded helper macro for log domain registration function building.
ppisa [Mon, 25 May 2009 17:42:12 +0000 (17:42 +0000)]
Added helper macro for log domain registration function building.

14 years agoAdded constructor, destructor and always_inline attributes to the uLUt definitions.
ppisa [Mon, 25 May 2009 17:41:29 +0000 (17:41 +0000)]
Added constructor, destructor and always_inline attributes to the uLUt definitions.

14 years agoAdded script to generate log domains arrays for static registration.
ppisa [Mon, 25 May 2009 15:34:28 +0000 (15:34 +0000)]
Added script to generate log domains arrays for static registration.

14 years agoData queue FIFO included in uLUt missing file added.
ppisa [Sun, 17 May 2009 09:35:52 +0000 (09:35 +0000)]
Data queue FIFO included in uLUt missing file added.

14 years agoData queue FIFO included in uLUt.
ppisa [Sun, 17 May 2009 09:33:49 +0000 (09:33 +0000)]
Data queue FIFO included in uLUt.

The FIFO support functions and type for custom element
can be declared by UL_DQFIFO_CUST_DEC. The static
instances can be declared by UL_DQFIFO_STATIC_INSTANCE.
The FIFO size has to be power of two, because sequential
numbers are masked when index into buffer is computed.

Queue allows to iterate over last N elements in addition
to usual put and get operations which is significant
for FIR filters implementation.

15 years agoFixes to achieve C++ compatibility
wentasah [Tue, 10 Feb 2009 12:36:57 +0000 (12:36 +0000)]
Fixes to achieve C++ compatibility

new is C++ keyword so it cannot be used as a name of identifiers.

15 years agoMore clean separation of htimer time and msec time in event poll code.
ppisa [Tue, 27 Jan 2009 23:36:08 +0000 (23:36 +0000)]
More clean separation of htimer time and msec time in event poll code.

15 years agoThe uLUt root htimer can be redirected through ul_root_htimer_ops.
ppisa [Tue, 27 Jan 2009 20:34:04 +0000 (20:34 +0000)]
The uLUt root htimer can be redirected through ul_root_htimer_ops.

These changes are necessary to allow integration into another
root main loop and events processing framework in future.

The types ul_mstime_t/ul_msdiff_t and ul_htim_time_t/ul_htim_diff_t
are not intermixed in the code and they could be separated in the
future if there appears need to do so.

15 years agoFixed doc typo
wentasah [Wed, 7 Jan 2009 11:51:27 +0000 (11:51 +0000)]
Fixed doc typo

15 years agoUpdated cyclic buffer code.
ppisa [Fri, 19 Dec 2008 20:12:58 +0000 (20:12 +0000)]
Updated cyclic buffer code.

15 years agoUse pointer to constant key type in GSA and GAVL custom types.
ppisa [Fri, 19 Dec 2008 19:57:26 +0000 (19:57 +0000)]
Use pointer to constant key type in GSA and GAVL custom types.

The wish to allow use of constant references to key asked
by Michal Sojka for uLUt use in Frescor project.

15 years agoAddec const attribute to some generic GAVL iterator functions.
ppisa [Thu, 18 Dec 2008 07:33:51 +0000 (07:33 +0000)]
Addec const attribute to some generic GAVL iterator functions.

This is NOT conversion of custom seatch functions to the
const key pointer. This conversion needs more checking
and could cause problems when multiple consts attributes
are accumulated.

15 years agoUse va_copy if va_list is used twice, else bad things happen on X86_64 systems.
ppisa [Mon, 20 Oct 2008 08:41:51 +0000 (08:41 +0000)]
Use va_copy if va_list is used twice, else bad things happen on X86_64 systems.

The arguments pointer is eaten by its use in destination function
and it is unusable next time. The separate copy has to be used for each call.

15 years agoBack propagation of uLUt Makefile.omk changes from OCERA tree.
ppisa [Tue, 14 Oct 2008 23:33:04 +0000 (23:33 +0000)]
Back propagation of uLUt Makefile.omk changes from OCERA tree.

15 years agoUnification of uLUt Makefile.omk
ppisa [Tue, 14 Oct 2008 22:58:37 +0000 (22:58 +0000)]
Unification of uLUt Makefile.omk

15 years agoInitialization of the first_changed field of timer queue added to make Valgrind happy.
ppisa [Tue, 7 Oct 2008 08:16:36 +0000 (08:16 +0000)]
Initialization of the first_changed field of timer queue added to make Valgrind happy.

15 years agoThe UL_OFFSETOF return type changed to size_t
ppisa [Tue, 8 Jul 2008 21:09:27 +0000 (21:09 +0000)]
The UL_OFFSETOF return type changed to size_t
to silence enormous number of warnings on 64-bit systems.

The dependence on size_t could be problem in some specific
target configurations although.

16 years agoCorrected bug in gavl_find_after() found by Martin Molnar.
ppisa [Fri, 29 Feb 2008 11:04:50 +0000 (11:04 +0000)]
Corrected bug in gavl_find_after() found by Martin Molnar.

Added test option 'S' to check this function in "ul_gavlchk.c".

16 years agoMinor updates for C++ compatibility.
ppisa [Tue, 4 Dec 2007 20:02:09 +0000 (20:02 +0000)]
Minor updates for C++ compatibility.

16 years agoul_ethd - reimplementation working with sockets - now sending uses fdopen
smolik [Wed, 14 Nov 2007 13:30:58 +0000 (13:30 +0000)]
ul_ethd - reimplementation working with sockets - now sending uses fdopen
- under windows now is possible to run ul_ethd like windows service
ulut - disable compilation of utils_PROGRAMS under win32 - some error occures
libulan - implemeted new command - fd_wait_recv
- fdopen
a lot of bug fixes regarding ul_eth implementation

16 years agoCbuff included into legacy Makefile.std build.
ppisa [Sun, 12 Aug 2007 12:08:02 +0000 (12:08 +0000)]
Cbuff included into legacy Makefile.std build.

17 years agouLUt library updated from other projects.
ppisa [Tue, 13 Feb 2007 11:29:42 +0000 (11:29 +0000)]
uLUt library updated from other projects.

Added support for cyclic variables comparison
  ul_cyclic_gt
  ul_cyclic_ge
This is usable mainly to compare time counters and other
variables which are expected to overflow and support overflow
arithmetics.

17 years agoMinor uLUt enhancements for C89 conformance from other projects.
ppisa [Sat, 4 Nov 2006 09:15:19 +0000 (09:15 +0000)]
Minor uLUt enhancements for C89 conformance from other projects.

17 years agoConversion to new logging support finished.
ppisa [Sun, 30 Jul 2006 23:37:07 +0000 (23:37 +0000)]
Conversion to new logging support finished.
It is now possible to selectively enable and set verbosity
for different logging domains from commandline.
The option "-g" argument syntax is same for all tools.
Number without domain specifier or with symbol "all"
select log level for all domains. Domain name followed
by "." or "=" character selects level for specified domain.
More specifications can be concatenated by symbol ":" or ",".
Usage example:

   -g 1:domone.5:domtwo.6

Requires to select level 1 for all but two listed two specified
domains. Log levels for "domone" and "domtwo" domains are set
to 5 or 6 respectively.

17 years agoAdded parsing of log level argument.
ppisa [Fri, 28 Jul 2006 15:31:42 +0000 (15:31 +0000)]
Added parsing of log level argument.

17 years agoAdded custom delete_all function for GSA arrays.
ppisa [Fri, 28 Jul 2006 13:01:47 +0000 (13:01 +0000)]
Added custom delete_all function for GSA arrays.

17 years agoProvided generic code to maintain and register log domains.
ppisa [Fri, 28 Jul 2006 12:51:27 +0000 (12:51 +0000)]
Provided generic code to maintain and register log domains.

17 years agoCustom GSA array can be preinitialized by static intems list now.
ppisa [Fri, 28 Jul 2006 12:42:33 +0000 (12:42 +0000)]
Custom GSA array can be preinitialized by static intems list now.
The functions gsa_cust_insert_at() and gsa_cust_delete_at()
recognizes such case when alloc_count is zero and do array copy
instead of items array free or realloc.

17 years agoDBUFF loging updated to match other projects.
ppisa [Fri, 28 Jul 2006 07:51:11 +0000 (07:51 +0000)]
DBUFF loging updated to match other projects.

17 years agoAdded implementation of multi-tail circular buffer with O1 head space
ppisa [Sat, 29 Apr 2006 09:37:38 +0000 (09:37 +0000)]
Added implementation of multi-tail circular buffer with O1 head space
allocation.
This intended for situation, where more asynchronous sources
need to write data into queue. Because of uLUt is intended
to not enforce any policy to its users, the locking is not
part of the code and operations are divided to the shorter sequences.
Some of these has to be called with lock, spinlock or even IRQ
protection. Synchronization selection is fully in client hands.

18 years agoul_lib is possible compile with ul_log staff from ulut, new interface for indirect...
smolik [Fri, 7 Apr 2006 08:13:41 +0000 (08:13 +0000)]
ul_lib is possible compile with ul_log staff from ulut, new interface for indirect access

18 years agoadded support for logging, conditional compilation of ulcintf
smolik [Fri, 7 Apr 2006 07:21:39 +0000 (07:21 +0000)]
added support for logging, conditional compilation of ulcintf

18 years agoStructured comment added to unique IDs pool code and some memory leak correction.
ppisa [Tue, 24 Jan 2006 11:18:24 +0000 (11:18 +0000)]
Structured comment added to unique IDs pool code and some memory leak correction.

18 years agoElimination of some easily fix-able warnings for GCC-4.0.2.
ppisa [Sat, 29 Oct 2005 22:40:14 +0000 (22:40 +0000)]
Elimination of some easily fix-able warnings for GCC-4.0.2.
There is still bunch of more problematic things related
to the C99 strict aliasing rules.