Add debug.h

Added a general debug.h that will enable/disable debugging
messages to standard output via ::std::cout

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Merge branch 'buildsys_start' into buildsys
Fixed debug.h

Now the debug.h file works properly, be it enabled or disabled

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Header files definition for the Data module.

Signed-off-by: Paolo Maresca <plo.maresca@gmail.com>
Several modifications. Header file for the Data Package/Componet.

Signed-off-by: Paolo Maresca <plo.maresca@gmail.com>
Added assert() macros and improved debug()

New assert() macros have been added to debug.h, they print either
PASS or FAIL for the sake of Unit Testing modules.
Now debug() also prints file name and line number.

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Report and Obeserver coded and tested.

Signed-off-by: Paolo Maresca <plo.maresca@gmail.com>
Differentiated debug() from print() and assert()

Made a difference between debug(), that is enabled by the
specific compilation flag, and the print() and assert()
macros that are always enabled and provide the user with
less verbose informations.

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Logger package and RawLogger implementation start

Defined the new Logger package for providing Logging functionality.
A first implementation is RawLogger, that will just use regular
File stream capabilities.

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Fixed Logger interface and updated build system

Some minor changes:
 * Fixed interface, now Logger is a pure abstract class and
   RawLogger is a Singleton that implements it
 * Updated Makefile and build.xml
 * Added the obj/ subfolder

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Non-concurrent RawLogger completed

Completed a privisional RawLogger, not yet thread-safe:
 * Fixed linking problems in RawLogger implementations
 * Updated Makefile
 * Unit Testing: done

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
RawLogger: fixed test and Makefile

The Makefile has now been provided with a target to enable
debugging options, without modifying manually debug.h, and
the debug and assert macros of the testing module have been
modified.

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Added debug() to RawLogger methods

The debug() functions has been added for each RawLogger method

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Concurrent testing for RawLogger

Unit Testing module supports concurrency testing.
Added -g3 flag to the debug target in the Makefile.

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Polymorphic calls to specific custom Test Items coded and tested.

Signed-off-by: Paolo Maresca <plo.maresca@gmail.com>
Thread-safe implementation of RawLogger

A static mutex has been added to RawLogger to protect static variables
and ensure thread-safe behaviour.

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
FSManager interface and first RawFSManager implementation

Defined the following:
 * FSManager abstract interface
 * RawFSManager implemented as a singleton with a single
   synchronized file stream
 * Single-threaded buffered I/O

Signed-off-by: Raffaele Aquilone <raquiloX>
Fixed minor bug on shared pointer

The integer used to count thread number was shared between threads
without being synchronized, now they all access separate dynamic
variables.

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>
Merge branch 'logger_raw' into logger
Updated .gitignore and log/ folder

Minor changes:
 * Updated .gitignore to ignore all text files
 * Added log/ folder

Signed-off-by: Raffaele Aquilone <aquiloneraf@gmail.com>