git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1338 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
52 lines
3.0 KiB
Plaintext
52 lines
3.0 KiB
Plaintext
Directory structure:
|
|
=========================================================================================
|
|
|
|
The folders are nested as follow:
|
|
-----------------------------------
|
|
fail: Fail* parent directory, containing all source & configuration files (${FAIL_DIR})
|
|
|-cmake: CMake-related configuration files (e.g. compiler-flags, dependencies, ...)
|
|
|-doc: Fail*-Framework documentation (e.g., diagrams, how-to's, ...)
|
|
|-deprecated: temporal and old (source) files, which will probably be deleted
|
|
|-scripts: python/shell scripts for Fail*-compilation and experiment distribution
|
|
|-simulators: parent directory of simulators supported by Fail* (may still be WIP)
|
|
|-bochs: source files of the (modified) Bochs x86 simulator backend
|
|
|-ovp: source files of the Open Virtual Platform simulator backend
|
|
|-src: C/C++/AspectC++ source files related to Fail*, experiments and plugins
|
|
|-core: core source files forming the Fail* framework
|
|
|-util: utility classes and miscellaneous helper functions
|
|
|-config: CMake configuration files, defining the Fail* components and variant
|
|
|-sal: source file forming the Simulator Abstraction Layer (backend-interface)
|
|
|-bochs: backend source files to the Bochs simulator
|
|
|-ovp: backend source files to the Open Virtual Platform simulator
|
|
|-cpn: campaign- (and therefore server-)related source files
|
|
|-efw: experiment-framework- (and therefore client-)related soure files
|
|
|-comm: communication related source files (these files are used by cpn and efw)
|
|
|-msg: Google protobuf message definitions used for communication purposes
|
|
|-experiments: experiment code files (within a new dir) need to be located here
|
|
|-plugins: plugin code files (within a new dir) need to be located here
|
|
|-[build]: recommended location of your build-tree, generated files will be placed here
|
|
|
|
Some additional useful notes:
|
|
-----------------------------------
|
|
- The source files have been documented using Doxygen comments. The Doxygen
|
|
documentation can be generated by typing "make doc" in your build-tree. The
|
|
resulting HTML and LaTeX files will be located in "${BUILD_DIR}/src/core/doc/".
|
|
- CMake supports an "in-source" build-tree. We recommend you not to use this
|
|
feature, because it leads to a cluttered directory structure (mixing original
|
|
source files and generated code/config files). (Since it is still possible, however,
|
|
the "build" directory is optional.)
|
|
- CMake invokes the compiler with the following include directories:
|
|
* ${FAIL_DIR}/src/core
|
|
* ${BUILD_DIR}/src/core
|
|
When compiling the Bochs variant the following directory is added, too:
|
|
* ${FAIL_DIR}/simulators/bochs
|
|
These definitions simplify and shorten the include paths.
|
|
|
|
|
|
|
|
Namespace structure:
|
|
=========================================================================================
|
|
All classes, functions, constants, etc. are encapsulated in the namespace "fail".
|
|
Experiments and plugins (see corresponding directories above) are located in the
|
|
global scope (not in the "fail"-namespace).
|