31.01.2014 Views

Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...

Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...

Ph.D. - geht es zur Homepage der Informatik des Fachbereiches 3 ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 9. openETCS Generator Application<br />

CProject<br />

CConstraintChecker<br />

OCL_Constraint_File<br />

CVMGenerator<br />

CCPPGenerator<br />

CBuildGenerator<br />

VM_Configuration<br />

CPP_Source<br />

CMake_Build_Configuration<br />

Root element class for any GOPPRR C++ abstract syntax<br />

model.<br />

Checks a ::GOPPRR:CProject instance for certain constraints<br />

defined in OCL as static semantics. Its implementation is,<br />

like the GOPPRR C++ abstract syntax model in Section 4.2,<br />

independent from the used meta model.<br />

External file with constraints defined by OCL statements as<br />

static semantics for a certain meta model in the GOPPRR<br />

meta meta model.<br />

Generat<strong>es</strong> the configuration for the virtual machin<strong>es</strong> by traversing<br />

a CGOPPRRSyntaxTree object.<br />

Generat<strong>es</strong> the C++ sourc<strong>es</strong> to instantiate the openETCS<br />

domain framework by traversing a CGOPPRRSyntaxTree<br />

object.<br />

Generat<strong>es</strong> the build configuration (for cmake [14]) to compile<br />

the generated sourc<strong>es</strong> by traversing a CGOPPRRSyntaxTree<br />

object.<br />

Generated configuration for virtual machin<strong>es</strong> of a certain<br />

hypervisor.<br />

Generated C++ sourc<strong>es</strong>.<br />

Generated cmake build configuration.<br />

Since the openETCS generator application us<strong>es</strong> and combin<strong>es</strong> several modul<strong>es</strong> or rather<br />

packag<strong>es</strong> [64], the affiliation of the actors in Figure 9.1 is explicitly defined in the diagram. The<br />

packag<strong>es</strong> themselv<strong>es</strong> are explained in more detail in the next lin<strong>es</strong>:<br />

xmlpp<br />

DSM<br />

GOPPRR<br />

oETCS<br />

GEN<br />

External libxml++ library for parsing XML fil<strong>es</strong>, which is appropriate for the case<br />

study because it is licensed as FLOSS and is implemented in C++.<br />

Holds class<strong>es</strong> that are generally usable for domain-specific modelling and are not<br />

limited to a certain meta model. Since in this work only the GOPPRR meta meta<br />

model is used, this is mainly a d<strong>es</strong>ign issue to provide a better expandability for<br />

further work with other meta meta models, like MOF (see Appendix A).<br />

Package of the GOPPRR C++ abstract syntax model in Section 4.2, which is<br />

independent from the used meta model.<br />

The superior package for all elements related to the openETCS case study.<br />

Package inside the oETCS package with all class<strong>es</strong> for the generator application<br />

that depend on the openETCS meta model (in Chapter 7).<br />

162

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!