-
Notifications
You must be signed in to change notification settings - Fork 0
rhzg/GERTICO
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
GERTICO Version $Name: $
===============================================================================
Installation (Windows)
===============================================================================
Extract the GERTICO installation file from the *.zip file
Execute the installation:
for Release:
Release\setup.exe
for Debug:
Debug\setup.exe
Follow the steps to install GERTICO until the choice of installation folder:
default: [ProgramFilesFolder]\FHG\GERTICO\
Continue install until completion.
Set global variables:
set GERTICO=[ProgramFilesFolder]\FHG\GERTICO
set PATH=%PATH%;%GERTICO%\bin
===============================================================================
GERTICOconf.xml
===============================================================================
After Installation is complete, the GERTICOconf.xml file should be checked to
reflect the local requirements
1. Naming Service
-----------------
1.1 endPoint
------------
The name of the computer where NamingService runs is specified.
Windows
-------
a) NamingService, GERTICO and Federates all on one computer
<endPoint>corbaloc:iiop:localhost:3000</endPoint>
b) NamingService, GERTICO and Federates on several computers
<endPoint>corbaloc:iiop:myHost.de:3000</endPoint>
or
<endPoint>corbaloc:iiop:12.34.56.78:3000</endPoint>
Linux
-----
<endPoint>corbaloc:iiop:myHost.de:3000</endPoint>
or
<endPoint>corbaloc:iiop:12.34.56.78:3000</endPoint>
1.2 rootEntry
-------------
When several GERTICO Processes are started, different names
have to be used for the Root Entry im NamingService.
<rootEntry>GeRTI</rootEntry>
or
<rootEntry>GeRTItwo</rootEntry>
2. Crash_ResignAction
---------------------
When a Federate crashes, the ResignAction which will be used in
ResignFederationExecution for this federate is specified here.
Value HLA1.3 Semantic IEEE1516 Semantic
---- --------------- -----------------
unconditionallyDivestAttributes RELEASE_ATTRIBUTES unconditionallyDivestAttributes
deleteObjects DELETE_OBJECTS deleteObjects
cancelPendingOwnershipAcquisitions NO_ACTION cancelPendingOwnershipAcquisitions
deleteObjectsThenDivest DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES deleteObjectsThenDivest
cancelThenDeleteThenDivest DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES cancelThenDeleteThenDivest
noAction NO_ACTION noAction
3. DataLength
-------------
When a value of DataLength greater than 1 is given, the events (Update oder
SendInteraction) will be buffered in LRC until this length or the
TransmissionWait_ms is exceeded. Then the available events will be sent
in one bundle.
When a value of DataLength equal to 0 or 1 is given, each event will be
sent individually LRC to GERTICO.
4. DTDfile
----------
Not used.
5. LogicalTime1516 (ignored by 1.3)
-----------------------------------
Specifies the name of the logical time library.
Windows
-------
The extension .dll will be added automatically
Linux
-----
The prefix lib and the extension .so will be added automatically
6. ModelPath
------------
Search path for FOM / SOM files. Several paths may be specified - the
firstpath with a valid file will be used. A macro in the form $(macro)
may be used.
7. SyncScope
------------
The CORBA QoS (Quality of Service) is specified here.
Value CORBA QoS actually used
---- -----------------------
SYNC_NONE SYNC_NONE
SYNC_WITH_TRANSPORT SYNC_WITH_TRANSPORT
SYNC_WITH_SERVER SYNC_WITH_SERVER
SYNC_WITH_TARGET SYNC_WITH_TARGET
The value SYNC_WITH_TRANSPORT has been found to provide the best results.
8. TransmissionWait_ms
----------------------
When DataLength greater than 1 is specified, a watchdog is started and
this will send, after this transmission wait time (in ms), all available
events to the GERTICO process.
===============================================================================
Starting the naming service (Windows)
===============================================================================
in %GERTICO%\scripts execute:
In general, on the host <host_name> (same as in GERTICOconf.xml) use the command:
startNS.bat <host_name>
to start the naming service
In particular, for naming service, GERTICO and all federates on one host use the
command:
startNS.bat
===============================================================================
Overview of the GERTICO Module
===============================================================================
Build: Project files GERTICO
EventMarket: Implementation of the event channel
FedTime: Implementation of a 1.3 time library
FedTime1516: Implementation of a 1516 time library
FedTime1516PSISA: Implementation of a 1516 time library
Gal: "GERTICO Application Logging" Logging module
GalRes: Resource files for Gal
GeRti: GeRti Server
GeRtiTime: Time Management Module
LRC: Local RTI Component
Federate-side Module
LRC/HLASpec: LRC Mapping of the HLA 1.3 Interface Specification
LRC/HLA1516: LRC Mapping of the HLA IEEE1516 Interface Specification
OMT_XML: XML Parser Module (Version 2.0.0)
Util: Utility functions.
bin: In the Binary Distribution, contains the necessary libraries and
utility programs.
doc: Documentation
(unfortunately not up-to-date in all parts)
idl: GERTICO internal CORBA interfaces
include: Standard 1.3/1516 header files to be included
samples: Some sample applications
scripts: Useful shell scripts
===============================================================================
GERTICO compilation for Linux
===============================================================================
1. Setting the global variables
-------------------------------
The following global variables must be set:
$GERTICO: Must be the Top-Level GERTICO installation directory
$ACE_ROOT: Is defined as with the ACE Installation
$TAO_ROOT: Is defined as with the TAO Installation
$XERCESCROOT: Points to the Top-Level directory which contains
the lib and include directories
The current versions are available from the following URL:
http://xml.apache.org/dist/xerces-c/stable/
2. Compilation
--------------
On the top level, set off the make command:
> cd $GERTICO
For 1.3
> make install
For 1516
> make -f Makefile1516 install
===============================================================================
GERTICO compilation for Windows (MS-Visual C++ VC8.0)
===============================================================================
Project files:
%GERTICO%\Build\VC8\Build.sln
===============================================================================
IMPORTANT Notes
===============================================================================
1) If dynamic Netwerk Addressing is not used, then the address resolution files
/etc/hosts (Linux)
and
%SystemRoot%\system32\drivers\etc\hosts (Windows)
must be correct.
2) The %GERTICO%\GERTICOconf.xml must contain the Hostname of the computer
where the CORBA Naming Service is running. (It is only possible under Windows
where Naming Service, gerti and all Federates are running on the same
computer that the "localhost" option can be used.)
3) Loading libraries:
Linux: $GERTICO/lib must be contained in $LD_LIBRARY_PATH
Windows: %GERTICO%\bin must be contained in %path%
===============================================================================
Starting the HelloWorld example (1.3 only)
===============================================================================
1. Starting Naming Service
-------------------------------
The Naming Service of the GERTICO distribution may be used. The TAO NamingService
must be started with a defined Port ID:
> $GERTICO/bin/Naming_Service -ORBEndpoint iiop://localhost:3000 -d
(the -d option is optional to control whether NamingService displays logging messages)
> $GERTICO/bin/nslist -ORBInitRef NameService=corbaloc:iiop:localhost:3000/NameService
This ORBEndpoint must also be entered in the GERTICO configuration file GERTICOconf.xml.
2. Starting GeRti server
----------------------------
The GeRti server must be started in a directory, in which the XML Fed-files
and the HLA.dtd file are present. Note: the GERTICOconf.xml may be changed to allow
for a list of directories to be searched
Linux:
For 1.3
$GERTICO/bin/gerti13
For 1516
$GERTICO/bin/gerti1516
Windows:
For 1.3
%GERTICO%\bin\GeRti13.exe
For 1516
%GERTICO%\bin\GeRti1516.exe
3. Starting HelloWorld federates
-----------------------------------
The HelloWorld example is taken from the RTI 1.3NGv3 Distribution
and uses the following parameters:
helloWorld <Country Name> <Initial Population> [<Number of Ticks>]
where
Country Name: an arbitrary country name,
Initial Population: an arbitrary positive number and
Number of Ticks: optional - the number of cycles to run
Thus the following commands (example) are required per federate:
> cd $GERTICO/LRC/HLASpec/App/helloWorld
> helloWorld fedA 100 1000
===============================================================================
Installation of ACE/TAO
===============================================================================
GERTICO uses a standard installation von ACE/TAO for its internal communication.
The complete installation instructions are found in $ACE_ROOT/Install.html
In particular, the following steps are required (Linux):
1. Set global variable $ACE_ROOT
2. Create Link: ace/config.h -> config-linux.h
3. Create Link: include/makeinclude/platform_macros.GNU -> platform_linux.GNU
4. Set LD_LIBRARY_PATH to $ACE_ROOT/ace
5. Do make in $ACE_ROOT
6. Set global variable $TAO_ROOT
7. Do make in $TAO_ROOT
===============================================================================
Installation of XERCES
===============================================================================
GERTICO uses a standard XERCES distribution without any changes.
The Source-Code Distribution was used, and the build instructions
in the XERCES Documentation were followed.
About
Open Source RTI
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published