Project

General

Profile

Design Improvements #191

Updated by André Neto almost 10 years ago

h1. Main definitions

h2. Object

The MARTe Object is a class which offers the following functionality:
# Can be managed through a shared/smart pointer mechanism;
# Can be automatically constructed given a class name;
# Provides a standard initialisation/configuration configuration/setup entry function;
# It has a name;
# Is introspectable.
## As a minimum the following information shall be available:
### The name of the class;
### The name of the object;
### The version of the class from which the code was compiled (i.e. revision control version)
## Shall enable reflection of derived classes that wish to expose this information.

As in the previous version of the framework any Object class instance shall automatically register itself in a class database. This database shall expose:
# All the classes that were instantiated by the framework for any given application;
# The number of objects that were instantiated for any given class.

h2. Smart/shared pointers
As in the previous version of MARTe (i.e. BaseLib2) the framework shall support, promote and enforce the usage of shared pointers. This was implemented using GCRTemplate and GCRefences. Only minor refactoring is expected.

Naming of new classes to be agreed.
Reference

h3.

Back