The system design view is used to prepare the communication objects that components use for interacting with others through services. Communication objects are grouped to communication object repositories, that name a group of communication objects. To create a new communication/coordination repository project, select "File->New->SmartSoft Communication/Coordination Repository" (cf. figure 2.7), enter a name and choose a storage location. Typically the project is stored at "$SMART_ROOT_ACE/src/interfaceClasses" and its name starts with "Comm" followed by the name of the repository.
Existing SmartSoft communication/coordination projects can be imported by selecting "File->Import". In the appearing dialog choose "General->Existing Projects into Workspace". See section "Starting for the first time" for more information.
The created project contains two different models. A communication objects model (file *.comm) and a Parameters model (file *.pardef). These models are located in the model-folder of the project.
Communication/coordination projects contain various folders and files. For the development of communication objects and parameters the following are important:
build: Directory for compiling source code using cmake. This directory should not be versioned.
bin: Temporary, toolchain internal folder. This directory should not be versioned.
model: The model folder contains the textual models of the communication objects and parameters.
src: After the code generation this folder contains user-specific source code for custom user-functions. For advanced users only (e.g. if you want to implement custom and complex access methods).
src-gen: The src-gen folder contains source-code that is generated by the SmartSoftMDSD toolchain. Please do not modify these files, they will be overwritten each time the toolchain generator is run.
CMakeLists.txt: This file is used to change the default cmake behavior or to add additional libraries and dependencies. Further information is provided in section 2.3.4.