Featured in this patch:
* In public headers, only include what is really needed by the
declarations of the header itself. Copy forward declarations when
possible instead of including just for the included file's forward
declaration. Also indicate above each included header why it is
included to justify it.
This should prevent future bugs where we could, for example, remove an
included header to replace it by a forward declaration, breaking some
builds which relied on indirect inclusion (e.g. my project does not
need to include <babeltrace/values.h> because it includes
<babeltrace/ctf-ir/event-class.h>).
* Make all the plugin C source/header files include
<babeltrace/babeltrace.h> instead of a bunch of public headers. This
does not significantly increase the build time while making the source
file much cleaner.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>