150 | | == Boost.Bitfield == |
151 | | * '''Author(s):''' Emile Cormier, Vicente J. Botet Escribá |
152 | | * '''Version:''' 0.1 |
153 | | * '''State:''' Stable - Formal review requested - Review manager Anthony Williams |
154 | | * '''Last upload:''' 2009 October 15 |
155 | | * '''Links:''' [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=bitfield.zip&directory=Portability&PHPSESSID=96307fee8086c06036af42fae790b449 Boost Vault][http://svn.boost.org/svn/boost/sandbox/bitfield Boost Sandbox][http://svn.boost.org/svn/boost/sandbox/bitfield/libs/integer/doc/index.html Documentation] |
156 | | * '''Categories:''' [#Portability Portability] |
157 | | * '''Description:'''Portable bitfields traits |
158 | | |
159 | | * a generic bitfield traits class providing generic getter and setter methods. |
160 | | * a BOOST_BITFIELD_DCL macro making easier the definition of the bitfield traits and the bitfield getter and setter functions. |
161 | | |
162 | | {{{ |
163 | | #!cpp |
164 | | struct X { |
165 | | typedef boost::ubig_32 storage_type; |
166 | | storage_type d0; |
167 | | typedef unsigned int value_type; |
168 | | BOOST_BITFIELD_DCL(storage_type, d0, unsigned int, d00, 0, 10); |
169 | | BOOST_BITFIELD_DCL(storage_type, d0, unsigned int, d01, 11, 31); |
170 | | }; |
171 | | }}} |
172 | | |
173 | | --------------------------------------------------------------------------------------------------- |
209 | | == Boost.Chrono == |
210 | | * '''Author(s):''' Howard Hinnant, Beman Dawes and Vicente J. Botet Escribá |
211 | | * '''Version:''' 0.7 |
212 | | * '''State:''' Stable |
213 | | * '''Last upload:'''2010 November 01 |
214 | | * '''Links:''' [http://svn.boost.org/svn/boost/sandbox/chrono/libs/chrono/doc/html/index.html Documentation] [http://svn.boost.org/svn/boost/sandbox/chrono/libs/chrono/doc/chrono.pdf PDF][http://www.boostpro.com/vault/index.php?action=downloadfile&filename=chrono.zip&directory=System& Download] [http://svn.boost.org/svn/boost/sandbox/chrono Boost Sandbox] |
215 | | * '''Categories:''' [#System System] |
216 | | * '''Description:''' The Boost Chrono library provides: |
217 | | * The C++0x Standard Library's time utilities, including: |
218 | | * Class template duration |
219 | | * Class template time_point |
220 | | * Clocks: |
221 | | * system_clock |
222 | | * monotonic_clock |
223 | | * high_resolution_clock |
224 | | * typeof registration for classes duration and time_point |
225 | | * Process clocks: |
226 | | * process_real_CPU_clocks, capturing real-CPU times. |
227 | | * process_user_CPU_clocks, capturing user-CPU times. |
228 | | * process_system_CPU_clocks, capturing system-CPU times. |
229 | | * process_cpu_clock, tuple-like class capturing at once real, user-CPU, and system-CPU times. |
230 | | * Thread clock |
231 | | |
232 | | * It provides I/O for duration and time_point. It builds on <boost/ratio/ratio_io.hpp> to provide readable and flexible formatting and parsing for types in <boost/chrono.hpp>. The duration unit names can be customized through a new facet: duration_punct. |
233 | | |
234 | | --------------------------------------------------------------------------------------------------- |
335 | | |
336 | | --------------------------------------------------------------------------------------------------- |
337 | | == Boost.Context == |
338 | | * '''Author(s):''' Oliver Kowalke |
339 | | * '''Version:''' 0.2 |
340 | | * '''State:''' |
341 | | * '''Last upload:'''2010 August 23 |
342 | | * '''Links:''' [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=boost.context-0.2.0.zip&directory=Concurrent%20Programming& Boost Vault] |
343 | | * '''Categories:''' [#ConcurrentProgramming Concurrent Programming] |
344 | | * '''Description:''' Boost.Context provides framework for user-context swapping/switching - has assembler for some platforms |
345 | | |
346 | | |
347 | | --------------------------------------------------------------------------------------------------- |
348 | | == Boost.Conversion == |
349 | | |
350 | | * '''Author(s):''' Vicente J. Botet Escribá |
351 | | * '''Version:''' 0.5 |
352 | | * '''State:''' Stable - Formal review requested - Looking for a review manager |
353 | | * '''Last upload:'''2010 September 24 |
354 | | * '''Links:''' [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=conversion.zip&directory=Utilities& Boost Vault] [http://svn.boost.org/svn/boost/sandbox/conversion Boost Sandbox] [http://svn.boost.org/svn/boost/sandbox/conversion/libs/conversion_ext/doc/index.html Documentation] [http://svn.boost.org/svn/boost/sandbox/conversion/libs/conversion_ext/doc/conversion.pdf PDF] |
355 | | * '''Categories:''' [#Utilities Utilities] |
356 | | * '''Description:''' Generic explicit conversion between unrelated types. |
357 | | |
358 | | The template function convert_to allows to convert a source type to a target type, using argument dependent lookup to select a specialized convert_to function if available. If no specialized convert_to function is available, boost::conversion::convert_to is used. |
359 | | |
360 | | The generic convert_to function requires that the elements to be converted are assignable and copy constructible. It is implemented using the Target copy construction from a Source or the Source conversion operator Target - this is sometimes unavailable. |
361 | | |
362 | | For standard types, we can not add a specialized convert_to function on the namespace std. The alternative to using argument dependent lookup in this situation is to provide a template specialization of boost::conversion::convert_to for every pair of standard types that requires a specialized convert_to. |
363 | | |
364 | | Boost.Conversion provides: |
365 | | |
366 | | * a generic convert_to function which can be specialized by the user to make explicit conversion between unrelated types. |
367 | | * a generic assign_to function which can be specialized by the user to make explicit assignation between unrelated types. |
368 | | * a generic mca/tie function returning a wrapper which replace assignments by a call to assign_to and conversion operators by a call convert_to. |
369 | | * a generic convert_to_via function which convert a type From to another To using a temporary one Via. |
370 | | * a generic pack function used to pack Source and target constructor arguments. |
371 | | * conversion between std::complex of explicitly convertible types. |
372 | | * conversion between std::pair of explicitly convertible types. |
373 | | * conversion between boost::optional of explicitly convertible types. |
374 | | * conversion between boost::rational of explicitly convertible types. |
375 | | * conversion between boost::interval of explicitly convertible types. |
376 | | * conversion between boost::chrono::time_point and boost::ptime. |
377 | | * conversion between boost::chrono::duration and boost::time_duration. |
378 | | * conversion between boost::array of explicitly convertible types. |
379 | | * conversion between Boost.Fusion sequences of explicitly convertible types. |
380 | | * conversion between std::vector of explicitly convertible types. |
381 | | |
382 | | --------------------------------------------------------------------------------------------------- |
383 | | == Boost.Convert == |
384 | | * '''Author(s):''' Vladimir Batov |
385 | | * '''Version:''' 0.36 |
386 | | * '''State:''' Review Requested |
387 | | * '''Last upload:''' 2009, Mars 02 |
388 | | * '''Links:''' [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=boost-string-convert.zip&directory=& Boost Vault] |
389 | | * '''Categories:''' [#StringAndTextProcessing String And Text Processing] |
390 | | * '''Description:''' Extensible framework for a uniform approach to type-to-type conversions in general. It builds on the lexical_cast past experience, offers the already familiar conversion functionality and more: |
391 | | |
392 | | * simple and better/safe conversion-failure check; |
393 | | * throwing and non throwing conversion-failure behavior; |
394 | | * support for the default value to be returned when conversion fails; |
395 | | * formatting support based on the standard I/O Streams and the standard (or user-defined) manipulators (like std::hex, std::scientific, etc.); |
396 | | * locale support; |
397 | | * support for boost::range-compliant char and wchar_t-based string containers (std::string, std::wstring, char const*, wchar_t const*, char array[], std::vector<char>, etc.); |
398 | | * no DefaultConstructibility requirement for the Target type; |
399 | | * room to grow. |
543 | | == Boost.Geometry (aka GGL) == |
544 | | * '''Author(s):''' Barend Gehrels, Bruno Lalande, Mateusz Loskot |
545 | | * '''Version:''' |
546 | | * '''State:''' Accepted (2009), not yet incorporated (target: 1.47) |
547 | | * '''Description:''' Generic Geometry Library (GGL), this was the name before acceptance into Boost |
548 | | * '''Links:''' [http://geometrylibrary.geodan.nl/index.html Web site] [http://trac.osgeo.org/ggl Web site and Wiki] [http://svn.boost.org/svn/boost/trunk/geometry Boost Trunk] |
549 | | [http://geometrylibrary.geodan.nl/qbk/libs/geometry/doc/html/index.html Quickbook docs in concept] |
550 | | [http://geometrylibrary.geodan.nl/index.html Older docs] |
551 | | * '''Categories:''' [#MathAndNumerics Math And Numerics] |
552 | | |
553 | | --------------------------------------------------------------------------------------------------- |
554 | | == Boost.GIL.IO == |
555 | | * '''Author(s):''' Christian Henning [mailto:chhenning-AT-gmail.com> |
556 | | * '''Version:''' |
557 | | * '''State:''' Stable |
558 | | * '''Last upload:''' 2009 Jan 14 |
559 | | * '''Links:''' [http://gil-contributions.googlecode.com/svn/trunk/gil_2 svn repository ] |
560 | | * '''Categories:''' [#ImageProcessing Image Processing] |
561 | | * '''Description:'''IO extension for boost::gil which allows reading and writing of/in image formats ( tiff, jpeg, ... ). |
562 | | |
563 | | --------------------------------------------------------------------------------------------------- |
582 | | |
583 | | --------------------------------------------------------------------------------------------------- |
584 | | == Boost.Integer.Endian == |
585 | | * '''Author(s):''' Beman Dawes |
586 | | * '''Version:''' |
587 | | * '''State:''' |
588 | | * '''Last upload:'''2008 Nov 26 |
589 | | * '''Links:''' [http://svn.boost.org/svn/boost/sandbox/endian Boost Sandbox] [http://svn.boost.org/svn/boost/sandbox/endian/libs/integer/doc/endian.html Documentation] |
590 | | * '''Categories:''' [#Portability Portability] |
591 | | * '''Description:''' Provides integer-like byte-holder binary types with explicit control over byte order, value type, size, and alignment. Typedefs provide easy-to-use names for common configurations. |
592 | | These types provide portable byte-holders for integer data, independent of particular computer architectures. Use cases almost always involve I/O, either via files or network connections. Although portability is the primary motivation, these integer byte-holders may also be used to reduce memory use, file size, or network activity since they provide binary integer sizes not otherwise available. |
627 | | == Boost.!InterThreads == |
628 | | * '''Author(s):''' Vicente J. Botet Escribá |
629 | | * '''Version:''' 0.1.3 |
630 | | * '''State:''' Stable - Formal review requested - Looking for a review manager |
631 | | * '''Last upload:''' 2009 April 02 |
632 | | * '''Links:''' [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=interthreads.zip&directory=Concurrent%20Programming& Boost Vault] [http://svn.boost.org/svn/boost/sandbox/interthreads Boost Sandbox] [http://svn.boost.org/svn/boost/sandbox/interthreads/libs/interthreads/doc/index.html Documentation] |
633 | | * '''Categories:''' [#ConcurrentProgramming Concurrent Programming] |
634 | | * '''Description:''' Boost.!InterThreads extends Boost.Threads adding some features: |
635 | | * thread decorator: thread_decorator allows to define setup/cleanup functions which will be called only once by thread: setup before the thread function and cleanup at thread exit. |
636 | | * thread_decorator can now decorate a nullary function in addition to a callable function |
637 | | * thread specific shared pointer: this is an extension of the thread_specific_ptr providing access to this thread specific context from other threads. As it is shared the stored pointer is a shared_ptr instead of a raw one. |
638 | | * thread keep alive mechanism: this mechanism allows to detect threads that do not prove that they are alive by calling to the keep_alive_point regularly. When a thread is declared dead a user provided function is called, which by default will abort the program. |
639 | | * thread tuple: defines a thread group where the number of threads is know statically and the threads are created at construction time. |
640 | | * set_once: a synchronizer that allows to set a variable only once, notifying to the variable value to whatever is waiting for that. |
641 | | * thread_tuple_once: an extension of the boost::thread_tuple which allows to join the thread finishing the first, using for that the set_once synchronizer. |
642 | | * thread_group_once: an extension of the boost::thread_group which allows to join the thread finishing the first, using for that the set_once synchronizer. |
643 | | |
644 | | thread_decorator and thread_specific_shared_ptr are based on the original implementation of threadalert written by Roland Schwarz. |
645 | | |
646 | | |
647 | | --------------------------------------------------------------------------------------------------- |
701 | | == Boost.!LockFree == |
702 | | * '''Author(s):''' Tim Blechmann |
703 | | * '''Version:''' v0.2 |
704 | | * '''State:''' |
705 | | * '''Last upload:''' 2009 November 24 |
706 | | * '''Links:''' [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=boost_lockfree-170809.zip&directory=Concurrent%20Programming& Boost Vault] [http://tim.klingt.org/git?p=boost_lockfree.git Git] [http://tim.klingt.org/boost_lockfree Documentation] |
707 | | * '''Categories:''' [#ConcurrentProgramming Concurrent Programming] [#Containers Containers] |
708 | | * '''Description:''' Provides implementations of lock-free data structures. Lock-free data structures can be accessed by multiple threads without the necessity of blocking synchronization primitives such as guards. Lock-free data structures can be used in real-time systems, where blocking algorithms may lead to high worst-case execution times, to avoid priority inversion, or to increase the scalability for multi-processor machines. |
709 | | |
710 | | The following data structures are provided: |
711 | | |
712 | | * boost::lockfree::fifo, a lock-free fifo queue |
713 | | * boost::lockfree::stack, a lock-free stack |
714 | | * boost::lockfree::atomic_int, an atomic integer class |
715 | | |
716 | | --------------------------------------------------------------------------------------------------- |
717 | | == Boost.Log == |
718 | | * '''Author(s):''' Andrey Semashev `[mailto:andrey.semashev__AT__gmail.com] |
719 | | * '''Version:''' RC3 |
720 | | * '''State:''' review version |
721 | | * '''Last upload:''' 2009 Fev 8 |
722 | | * '''Links:''' [http://boost-log.sourceforge.net Home Page] [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=BoostLog.zip&directory=& Review Version] |
723 | | * '''Categories:''' [#InputOutput Input/Output] |
724 | | * '''Description:''' This library aims to make logging significantly easier for the application developer. It provides a wide range of out-of-box tools, along with public interfaces ready to be used to extend the library. The main goals of the library are: |
725 | | * Simplicity. A small example code snippet should be enough to get the feel of the library and be ready to use its basic features. |
726 | | * Extensibility. A user should be able to extend functionality of the library with regard to collecting and storing information into logs. |
727 | | * Performance. The library should make as least performance impact on the user's application as possible. |
728 | | |
729 | | --------------------------------------------------------------------------------------------------- |
930 | | |
931 | | --------------------------------------------------------------------------------------------------- |
932 | | == Boost.Ratio== |
933 | | * '''Author(s):''' Howard Hinnant, Beman Dawes and Vicente J. Botet Escribá |
934 | | * '''Version:''' 0.2.0 |
935 | | * '''State:''' Stable |
936 | | * '''Last upload:'''2010 September 22 |
937 | | * '''Links:''' [http://svn.boost.org/svn/boost/sandbox/chrono/libs/ratio/doc/html/index.html Documentation] [http://svn.boost.org/svn/boost/sandbox/chrono/libs/ratio/doc/ratio.pdf PDF] [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=ratio.zip&directory=Math%20-%20Numerics& Download] [http://svn.boost.org/svn/boost/sandbox/chrono Boost Sandbox] |
938 | | * '''Categories:''' [#MathAndNumerics Math And Numerics] |
939 | | * '''Description:''' The Boost Ratio library provides: |
940 | | * The C++0x Standard Library's compile-time rational arithmetic. |
941 | | |
942 | | The Boost.Ratio library provides: |
943 | | |
944 | | * A class template, ratio, for specifying compile time rational constants such as 1/3 of a nanosecond or the number of inches per meter. ratio represents a compile time ratio of compile time constants with support for compile time arithmetic with overflow and division by zero protection |
945 | | * It provides a textual representation of boost::ratio<N, D> in the form of a std::basic_string. Other types such as boost::duration can use these strings to aid in their I/O. |
946 | | |
1103 | | |
1104 | | --------------------------------------------------------------------------------------------------- |
1105 | | == Boost.Stopwatches == |
1106 | | * '''Author(s):''' Vicente J. Botet Escribá |
1107 | | * '''Version:''' 0.1.0 |
1108 | | * '''State:''' Stable |
1109 | | * '''Last upload:'''2010 September 7 |
1110 | | * '''Links:''' [http://svn.boost.org/svn/boost/sandbox/chrono/libs/stopwatches/doc/html Documentation] [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=stopwatches.zip&directory=System& Download] [http://svn.boost.org/svn/boost/sandbox/chrono Boost Sandbox] |
1111 | | * '''Categories:''' [#System System] |
1112 | | * '''Description:''' The Boost Ratio library provides: |
1113 | | * Stopwatches: |
1114 | | * stopwatch, capturing elapsed Clock times. |
1115 | | * stopwatch_accumulator, capturing cumulated elapsed Clock times. |
1116 | | * scoped helper classes allowing to pairwise start/stop operations, suspend/resume and resume/suspend a Stopwatch. |
1117 | | * Stopwatch reporters: |
1118 | | * stopwatch_reporter, convenient reporting of models of Stopwatch results. |
1119 | | * stopclock<Clock> shortcut of stopwatch_reporter<stopwatch<Clock>>. |
1120 | | * Support for wide characters (strings and ostreams). |