claw Namespace Reference

This is the main namespace. More...

Namespaces

namespace  ai
 

Everything about artificial intelligence.


namespace  concept
 

Here are design patterns and other conceptual programming objects.


namespace  graphic
 

Everything about image structures and processing.


namespace  math
 

Manipulation of mathematic, geometric, etc. items.


namespace  memory
 

Memory management.


namespace  meta
 

Structures for meta-programmation.


namespace  net
 

Network communications.


namespace  text
 

Everything about text processing.


Classes

class  application
 A class to represent the application. More...
class  arguments
 A class to manage the arguments of your program. More...
class  arguments_table
 A class to manage the arguments of your program, with automatic management of short/long arguments and help message. More...
class  automaton
 Basic automaton structure. More...
class  avl
 Binary search tree AVL implementation. More...
class  avl_base
 Binary search tree base AVL implementation. More...
class  binary_node
 Basic binary node. More...
class  bit_istream
 This class is made to help reading datas of custom bit length. More...
class  bit_ostream
 This class is made to help writing datas of custom bit length. More...
class  buffered_istream
 This class is made to help reading istreams with a buffer. More...
class  buffered_ostream
 This class is made to help writing in ostreams with a buffer. More...
class  configuration_file
class  dynamic_library
 A class to use dynamic libraries. More...
class  dynamic_library_traits_unix
 Unix interface for using dynamic libraries. More...
class  dynamic_library_traits_win32
 Microsoft Windows interface for using dynamic libraries. More...
class  exception
 A simple class to use as exception with string message. More...
class  bad_format
 Exception thrown when accessing bad formated data. More...
class  first
 Fuction object to get the first element of a std::pair. More...
class  const_first
 Fuction object to get the first element of a std::pair. More...
class  pair_first
 Fuction object to get the first element of a std::pair. More...
class  const_pair_first
 Fuction object to get the first element of a std::pair. More...
class  second
 Fuction object to get the second element of a std::pair. More...
class  const_second
 Fuction object to get the second element of a std::pair. More...
class  pair_second
 Fuction object to get the second element of a std::pair. More...
class  const_pair_second
 Fuction object to get the second element of a std::pair. More...
class  unary_true
 Always true unary predicate. More...
class  binary_true
 Always true binary predicate. More...
class  unary_compose
 Function object that compose two function objects. More...
class  delete_function
 Function object that deletes a pointer. More...
class  clone
 Function object that clones a pointer. More...
class  dereference
 Function object that dereferences a pointer. More...
class  const_dereference
 Function object that dereferences a constant pointer. More...
class  graph_exception
 The exceptions thrown by the graphs. More...
class  graph
 A class to represent a graph. More...
class  scan_events
 Different stages of graph scanning. More...
class  breadth_scan
 This class performs a depth scan of a graph. Only reachables vertices from a given vertex are proceeded. More...
class  depth_scan
 This class performs a depth scan of a graph. All nodes are proceeded. More...
class  topological_sort
 Pass this class as the "Envents" template parameter of the depth scan class to sort the vertices of a graph with the topological sort algorithm. More...
class  multi_type_map_wrapper
 This class provides types and methods to allow the call of methods recursively along the inherintance hierarchy. More...
class  it_index
 A class to manage an index and an iterator easily. More...
class  wrapped_iterator_by_category
 Base class for wrapped iterators. More...
class  wrapped_iterator_by_category< std::forward_iterator_tag, Value, Iterator, Function >
 Base class for wrapped iterators, specialized for forward iterators. More...
class  wrapped_iterator_by_category< std::bidirectional_iterator_tag, Value, Iterator, Function >
 Base class for wrapped iterators, specialized for bidirectional iterators. More...
class  wrapped_iterator_by_category< std::random_access_iterator_tag, Value, Iterator, Function >
 Base class for wrapped iterators, specialized for random iterators. More...
class  wrapped_iterator
 This class defines an iterator resulting of the appliance of a function to an effective iterator. More...
class  log_level
 Set the level of the next message for logger_system::operator<<(). More...
class  log_stream
 Base class for streams accepting log output. More...
class  console_logger
 This class write log messages in std::clog. More...
class  file_logger
 This class write log messages in a file. More...
class  log_system
 A class implementing a logging system. More...
class  lzw_decoder
 A class to help decoding a stream encoded with Lempel-Ziv-Welch (LZW) compression algorithm. More...
class  lzw_encoder
 A class to help encoding a stream with Lempel-Ziv-Welch (LZW) compression algorithm. More...
class  max_vector
 Stockage d'une liste d'éléments ayant la même valeur avec majoration. L'ajout d'un élément de valeur supérieur à la valeur max actuelle supprime tous les éléments présents de la liste. More...
class  multi_type_map
 This class can associate values of different types to a key. More...
class  multi_type_map< Key, meta::no_type >
 Partial specialization, to stop the inheritance recursivity. More...
class  rle_decoder
 A class to help decoding run-length encoded (RLE) streams. More...
class  rle_encoder
 A class to help run-length encoding (RLE) streams. More...
class  socket_traits_unix
 Unix interface for using sockets. More...
class  socket_traits_win32
 Win32 interface for using sockets. More...
class  system_info
 A class to get some informations about the system in which your program runs. More...
class  tree
 A tree structure with any number of children. More...
class  trie
 This class is a trie tree. More...
struct  find_type_by_size
 This meta class finds, in a list of types, the first type stored exactly with a given number of bits. More...
struct  find_type_by_size< Size, meta::no_type >
 End of the recursion of the find_type_by_size class. More...
struct  integer_of_size
 Define the type of a signed integer stored with a given number of bits. Template parameters

  • Size The number of bytes in the types.
More...
struct  unsigned_integer_of_size
 Define the type of an unsigned integer stored with a given number of bits. Template parameters

  • Size The number of bytes in the types.
More...
class  dynamic_library_traits
 Common interface for platform specific methods needed for using dynamic library. More...

Typedefs

typedef dynamic_library_traits_unix dynamic_library_traits
typedef socket_traits_unix socket_traits
typedef meta::no_type non_standard_signed_types
typedef meta::no_type non_standard_unsigned_types
typedef meta::type_list
< signed char, meta::type_list
< signed short,
meta::type_list< signed int,
non_standard_signed_types > > > 
signed_integers
 This is the list of c++ signed integer types.
typedef meta::type_list
< unsigned char,
meta::type_list< unsigned
short, meta::type_list
< unsigned int,
non_standard_unsigned_types > > > 
unsigned_integers
 This is the list of c++ unsigned integer types.

Functions

template<typename InputIterator , typename UnaryFunction >
UnaryFunction inplace_for_each (InputIterator first, InputIterator last, UnaryFunction f)
 Apply an unary function to all members of a sequence.
void debug_assert (const char *file, const char *func, unsigned int line, bool b, const std::string &s)
 The method used by CLAW_ASSERT macro. Souldn't be used elsewhere.
template<typename Value , typename Iterator , typename Function >
wrapped_iterator_by_category
< std::random_access_iterator_tag,
Value, Iterator, Function > 
operator+ (int n, const wrapped_iterator_by_category< std::random_access_iterator_tag, Value, Iterator, Function > &it)
template<typename Value , typename Iterator , typename Function >
wrapped_iterator_by_category
< std::random_access_iterator_tag,
Value, Iterator, Function > 
operator- (int n, const wrapped_iterator_by_category< std::random_access_iterator_tag, Value, Iterator, Function > &it)
CLAW_LOGGER_EXPORT log_systemlendl (log_system &log)
 Add a new line caracter to a logger and flush it.

Variables

log_level log_error (0,"error")
 Use this level if something goes really bad and your application may crash.
log_level log_warning (1,"warning")
 Use this level if a small problem occurs and you can deal with it without crashing the application.
log_level log_verbose (15)
 Use this level if you want to inform the user about a situation that is not problematic.
log_system logger

Detailed Description

This is the main namespace.


Typedef Documentation

Definition at line 132 of file dynamic_library_traits_unix.hpp.

Definition at line 49 of file types.hpp.

Definition at line 50 of file types.hpp.

typedef meta::type_list< signed char, meta::type_list < signed short, meta::type_list<signed int, non_standard_signed_types> > > claw::signed_integers

This is the list of c++ signed integer types.

Definition at line 60 of file types.hpp.

Definition at line 230 of file socket_traits_unix.hpp.

typedef meta::type_list< unsigned char, meta::type_list < unsigned short, meta::type_list<unsigned int, non_standard_unsigned_types> > > claw::unsigned_integers

This is the list of c++ unsigned integer types.

Definition at line 68 of file types.hpp.


Function Documentation

void claw::debug_assert ( const char *  file,
const char *  func,
unsigned int  line,
bool  b,
const std::string &  s 
) [inline]

The method used by CLAW_ASSERT macro. Souldn't be used elsewhere.

Parameters:
file The file where the error is produced.
func The name of the current function.
line The line where the error is produced.
b A boolean condition to verify.
s Message printed if b is not verified.

Definition at line 68 of file assert.hpp.

References std::endl().

00070   {
00071     if ( !(b) )
00072       {
00073         std::cerr << file << ":" << line << "\n\t"
00074                   << func << " : \n" << s << std::endl;
00075         abort();
00076       }
00077   } // claw::debug_assert()

template<typename InputIterator , typename UnaryFunction >
UnaryFunction claw::inplace_for_each ( InputIterator  first,
InputIterator  last,
UnaryFunction  f 
) [inline]

Apply an unary function to all members of a sequence.

This function works like std::for_each() but allows the function to apply non-const methods to its argument.

Parameters:
first Iterator on the first element of the sequence.
last Iterator just past the end of the sequence.
f Function to apply to the elements of the sequence.
Remarks:
The return value of the unary function is ignored.

Definition at line 48 of file algorithm.hpp.

00050   {
00051     for (; first!=last; ++first)
00052       f(*first);
00053 
00054     return f;
00055   } // inplace_for_each()

claw::log_system & claw::lendl ( claw::log_system log  ) 

Add a new line caracter to a logger and flush it.

Parameters:
log The logger to flush.

Definition at line 176 of file logger.cpp.

References std::endl().

00177 {
00178   return log << std::endl;
00179 } // lendl()

template<typename Value , typename Iterator , typename Function >
wrapped_iterator_by_category<std::random_access_iterator_tag, Value, Iterator, Function> claw::operator+ ( int  n,
const wrapped_iterator_by_category< std::random_access_iterator_tag, Value, Iterator, Function > &  it 
) [inline]

Definition at line 294 of file iterator.hpp.

00297   {
00298     return it + n;
00299   }

template<typename Value , typename Iterator , typename Function >
wrapped_iterator_by_category<std::random_access_iterator_tag, Value, Iterator, Function> claw::operator- ( int  n,
const wrapped_iterator_by_category< std::random_access_iterator_tag, Value, Iterator, Function > &  it 
) [inline]

Definition at line 305 of file iterator.hpp.

00308   {
00309     return it - n;
00310   }


Variable Documentation

CLAW_LOGGER_EXPORT log_level claw::log_error

Use this level if something goes really bad and your application may crash.

Definition at line 74 of file log_level.hpp.

Referenced by claw::application::application().

CLAW_LOGGER_EXPORT log_level claw::log_verbose

Use this level if you want to inform the user about a situation that is not problematic.

Definition at line 86 of file log_level.hpp.

Referenced by claw::application::application().

CLAW_LOGGER_EXPORT log_level claw::log_warning

Use this level if a small problem occurs and you can deal with it without crashing the application.

Definition at line 80 of file log_level.hpp.

Referenced by claw::application::application().

CLAW_LOGGER_EXPORT log_system claw::logger

Definition at line 36 of file logger.cpp.

Referenced by claw::application::application(), and claw::application::~application().


Generated on 9 Nov 2009 for CLAW Library (a C++ Library Absolutely Wonderful) by  doxygen 1.6.1