file name: constant.hpp, constant.cpp
classification: simulation
contents: contains all constants that may be changed statically
use: provides all default values for system parameters and some
internally used constants
The constants are grouped into three parts:
system constants: In this group you can find all default values for system parameters. The user may change the parameter through the evaluation system.
communication constants: Here are all constants that are used in communication with the evaluation. The evaluation system can modify these constants, but the user can not. Right now, no constants fall into this group.
internal constants: Here are all constants that are used internally.
They can only be changed statically through modification of the value.
If constants are changed (statically), the implementation file has to
be modified. There, most of the time you will find comments on the possible
values of the constant. Please, always choose values that meet these conditions,
otherwise fault-free behaviour cannot be guaranteed.
System constants:
const double
DefaultAccGranularity: the accuracy transmission loss
used by: CClock
const double
DefaultAmortizationDuration: the default duration of the amortization
phase
used by: CClockInterface
const double
DefaultClockGranularity: the external clock granularity
used by: CClock
const double
DefaultComputationDelayCompensation: the default wait period from
application of the convergence function to resynchronization (in seconds)
used by: CClockSync
const double
DefaultDelayCompensation: the default wait period from FME to application
of the convergence function (in seconds)
used by: CClockSync
const double
DefaultIfcPeriod: the default period (in seconds) of the interface
modules responsible for communication with the evaluation; in the case
of the Supervisor, this is also the period of the (periodic) system snapshot
used by: CControllingObject
const double
DefaultOwnDelay: the default delay of a message from a node to itself
(in seconds); this constant is used as transmission delay if no transmission
data is specified for messages from a node to itself
used by: CNetworkAccountant
const double
DefaultRoundPeriod: the default round period of the clock synchronization
application (in seconds)
used by: CClockSync
const double
WcRhoMinus: the lower bound on the worst case clock drift (global,
for all clocks)
used by: CClockInterface, ACClockSyncAlgorithm
const double
WcRhoPlus: the upper bound on the worst case clock drift (global,
for all clocks)
used by: CClockInterface, ACClockSyncAlgorithm
Internal constants:
const INT32
ArrayAllocationSize: number of array elements that are freshly allocated
whenever there is not enough allocated memory to store a new object
used by: the list classes (ACObjectList,
...)
const double
ErrorPort: the service port of the datagram socket used for error
messages
used by: CTester
const double
ErrorReportPeriod: the period (in seconds) of the error report task/process
used by: CErrorTask (and derived classes)
const double
EvalsysPort: the service port of the stream socket to the evaluation
used by: CTester
const double
GpsDelay: the delay (in seconds) from the GPS 1PPS signal to calling
the ISR (pure simulation only)
used by: CGpsInterrupt
const double
GpsEpsilon: the clock value of a P-Node must differ from the GPS time
by more than this value if the difference is to be amortized
used by: ACGps
const unsigned
int MaxErrorMessages: the number of error messages the error report
task/process processes in one round
used by: CErrorTask (and derived classes)
const unsigned
int MaxErrorNumber: the maximum number of error messages that
the error queue can hold
used by: CErrorTask
const unsigned
int MaxErrorLength: the maximum length of an error string
used by: CErrorTask and error.cpp
const INT32
MaxMessageSize: the maximum size allowed for a stream socket
message
used by: CStreamSocket
const int
MaxTrials: default number of s_ident() calls before giving
up
used by: CStreamClient
const SINT32
NoAccount: this constant is generally used to indicate that the requested
data was not found
used by: a lot of classes
const SINT32
NumberOfAreas: the number of areas on a node
used by: several classes that check if the area parameter
requested is within acceptable bounds
note: the simulation assumes that every area within [0, NumberOfAreas)
can be used; if a slot on the carrier board is not occupied, the user must
not create an application on that area, since the simulation does not check
if a slot is occupied
const double
SocketTimeout: the default time an s_receive() call may block
(in seconds)
used by: CSocket