SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

Fidlib: Run-time filter design and execution library.

Copyright (c) 2002-2004 Jim Peters <http://uazu.net/>. This library is released under the GNU Lesser General Public License (LGPL) version 2.1 as published by the Free Software Foundation. See the file COPYING_LIB, or visit <http://www.fsf.org/licenses/licenses.html>.

"This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."

It was designed as a backend for the 'fiview' application (uazu.net/fiview), and to provide performance filtering services to EEG applications (and others), such as EEGMIR (uazu.net/eegmir).

See Fiview for a more interactive introduction to the filters included, more related documentation, and for the opportunity to generate even higher performing filters through generating C code for a class of filters, compiling it, and at run-time filling in the coefficients using fidlib.

---

This directory contains a number of testing scripts in addition to the fidlib source.

  mk-test       Create mini testing apps: do-test-*
  test          Test the speed of these apps

test-output Check that the output agrees test-codegen Dump all the code generated by the JIT option

---

See the source files for full library API documentation.

To include this library in your application, build fidlib.c along with your other C files. The fidlib.c file #includes all the other source files it needs. You will also need to #include fidlib.h in your source files to get the structure and function declarations.

There are three choices for the filter engine, but only one of these is actually useful. The 'combined' option can be slower and is unstable for larger filters (this is the equivalent to the original 'mkfilter' method) and the 'jit' option is no longer maintained as it was only slightly faster than the 'cmdlist' option. This leaves 'cmdlist' as the recommended option. The 'cmdlist' option should be portable to other processors as well, which the JIT option certainly wasn't.

Target-specific fixes are selected according to which of the T_* macros is set. See the source. Targets defined so far are:

T_LINUX
T_MINGW
T_MSVC

Jim

--

 Jim Peters                   (_)/=\~/_(_)                        Uazú
                           (_)  /=\  ~/_  (_)
                        (_)    /=\    ~/_    (_)                
 Brighton, UK        (_) ____ /=\ ____ ~/_ ____ (_)           uazu.net


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.