INOS
|
The default definition file. More...
Go to the source code of this file.
The default definition file.
project : INOS language : Gnu C++ system : Indel targets
This file contains all global default user INOS definitions
#define DF_DATA_LOGGER_MAX_CHANNELS 128 |
Defines the max. allowed channels per logger instance
#define DF_INCO_DEFAULT_RETRIES 3 |
Defines the default for the maximum number of retries when transmitting primary INCO frames. This sets the default, it can be alerted for each INCO source, also at runtime.
#define DF_INCO_DEFAULT_TIMEOUT 400 |
Defines the default for the timeout in ms when transmitting primary INCO frames. This sets the default, it can be alerted for each INCO source, also at runtime.
#define DF_INCO_FEATURES_DIS 0x00000000 |
Defines a bitmask of INCO features to be disabled. Used for backwards compatibility testing.
For a description of the features, see inco_com.h, DF_INCO_FEATURE_EXTFRAME and following.
#define DF_INCO_FRAMEPOOL_BACKTRACE 0 |
Enables/disables backtraces for INCO framepool operations. Intended for debugging purposes only.
#define DF_INCO_FRAMEPOOL_BACKTRACE_LIMIT 32 |
Defines the maximum number of backtrace frames for INCO framepool operations. Must be enabled first by setting DF_INCO_FRAMEPOOL_BACKTRACE to 1. Intended for debugging purposes only.
#define DF_INCO_MAX_FRAMES_DYN 1024 |
Defines the maximum number of dynamically allocated INCO frames.
#define DF_INCOV_DISPATCHER_PRIO DF_INOS_TASK_PRIO_COMMUNICATION_LOWEST |
Defines the priority for tasks involved in dispatching and processing INCOV frames.
Default: DF_INOS_TASK_PRIO_COMMUNICATION_LOWEST
This prevents user tasks from interrupting our task during getting the value of an INCO item. This is especially important for customer code having own INCO item subclasses that access pointers in the Get() method that are modified by a module task. On the other hand, the INCO4 dispatcher task still has higher priority (20), which should ensure that INCO V can always be debugged over INCO4. Note that the INCOV.sender and INCOV.receiver tasks need to have (at least) the same priority, to avoid priority inversion. One observed case is where this task needs to wait on the sender's tasks queue, which is full because the sender task did not get enough time for sending. Reproducible with the 'Path lengths exceed payload, expect single successful result' incov-js unit test.
Alternative: DF_INOS_TASK_PRIO_BACKGROUND
This can be used for heavy loaded systems to avoid communication interferences with production tasks. In this case it is important to check application code for INCO items that implement their own Get() method where data is accessed that is shared with a module task. If so, the access has to be locked explicitly, e.g. by a mutex, because the Get() method can now be interrupted at any time by tasks of the same priority.
#define DF_INOS_BASE_AXIS_LIMIT_CHECK_A_TOLERANCE REAL64(1.01) |
Defines the (de-)acceleration tolerance of the base axis limit checker
#define DF_INOS_BASE_AXIS_LIMIT_CHECK_J_TOLERANCE REAL64(2.0) |
Defines the jerk tolerance of the base axis limit checker
#define DF_INOS_BASE_AXIS_LIMIT_CHECK_V_TOLERANCE REAL64(1.0001) |
Defines the velocity tolerance of the base axis limit checker
#define DF_INOS_BOOT_MEMORY_SIZE 65536 |
Defines the boot 'dynamic' memory size (used before heap is set up)
#define DF_INOS_BOOT_STACK_SIZE 65536 |
Defines the boot stack size per core
#define DF_INOS_BUS_INFO_MAX_HOOKS 128 |
Defines the max. number of saved hooks in bus info
#define DF_INOS_BUS_MAX_SUB_CYCLES 8 |
Defines the max. number of subcycles (e.g. 4 for INFOLink or 8 for INFOLink with splitti)
#define DF_INOS_CAN_FRAME_CAPTURE_BUFFER_SIZE (2048*1024) |
Default capture buffer size
#define DF_INOS_CAN_FRAME_CAPTURE_OPTIONS 0x00000001 |
Default capture options, allowed values are
0x00000000 : none 0x00000001 : endless
#define DF_INOS_CAN_FRAME_CAPTURE_SNAP_LENGTH 16 |
Default capture snap length. Maximum number of bytes captured from each packet. The portion of each packet that exceeds this value will not be stored.
#define DF_INOS_CORE_IS_GINSLAVE 0 |
Defines which core has to be the ginlink slave
#define DF_INOS_CORE_MASK_TABLES 0x01 |
Defines a mask which cores should create database tables at startup (0x01 - only core 0, 0x03 - core 0 and 1, ...)
#define DF_INOS_DESKTOP_CUSTOM_MAIN 0 |
Disables the default main function for INOS Desktop (both Linux and Windows) Hence, instead a custom main function can and must be provided as starting point for INOS Desktop. This custom main should most likely call InitInos(int argc, char* argv[]) as last step. (And might return its result.) This is entended especially for running unit tests on INOS Desktop using unit test, e.g. it allows accepting parameters for Google Test on the command line when starting INOS desktop.
#define DF_INOS_DESKTOP_RAM_SIZE 256 |
Defines the available RAM size [MB] if running on INOS desktop (max. is 2GB = 2*1024MB)
#define DF_INOS_ETHERNET_FRAME_CAPTURE_BUFFER_SIZE (2048*1024) |
Default capture buffer size
#define DF_INOS_ETHERNET_FRAME_CAPTURE_FILTER_PORT_TCP 0 |
Default capture filter properties
port == 0 -> capture all frames (no filter) port != 0 -> only capture frames with given src/dst port
#define DF_INOS_ETHERNET_FRAME_CAPTURE_OPTIONS 0x00000001 |
Default capture options, allowed values are
0x00000000 : none 0x00000001 : endless
#define DF_INOS_ETHERNET_FRAME_CAPTURE_SNAP_LENGTH 1522 |
Default capture snap length. Maximum number of bytes captured from each packet. The portion of each packet that exceeds this value will not be stored.
We use a value so that we can accommodate a complete Ethernet frame:
payload : 1500 header : 14 FCS : 4
total : 1522
#define DF_INOS_EVENTLOGGER_ENTRIES 8192 |
Default number of entries
#define DF_INOS_EVENTLOGGER_OVERRIDDEN_OFF {0,0,0,0} |
Overridden "off" levels: These levels can't be set to '1' by code (using CINOSEvenLogger::ActivateLevels)
#define DF_INOS_EVENTLOGGER_OVERRIDDEN_ON {0,0,0,0} |
Overridden "on" levels: These levels can't be set to '0' by code (using CINOSEvenLogger::ActivateLevels)
#define DF_INOS_FIQ_PRIO_LOWEST 0 |
Defines the lowest possible fast interrupt priority
#define DF_INOS_GINDEVICEHND_PRIO 5 |
Defines the priority of the 'GINDeviceHnd' handler task
#define DF_INOS_IMAGE_LOAD_MAX_SIZE (32*1024*1024) |
Defines the max. allowed image size, if it is loaded via trans32
#define DF_INOS_IMAGE_MAX_SIZE (1024*1024) |
Default max. image size
#define DF_INOS_IMAGE_MIN_SIZE (1024) |
Default min. image size
Defines the default IRQ mode used when no specific mode (MSI or legacy) is set by the bootloader, e.g. because a very old INCOServer is used.
false == MSI mode true == legacy mode
#define DF_INOS_IRQ_PRIO_HIGHEST 0 |
Defines the highest possible interrupt priority
#define DF_INOS_JSON_MAX_TOKENS 1024 |
Defines the max. allowed JSON tokens
#define DF_INOS_LOCALBUS_SHARED_MEMORY_SIZE 256 |
Defines the size of the LOCALBUS shared memory area
#define DF_INOS_MAX_BUS_HOOK_CATEGORIES 4 |
Defines the maximum number of supported categories in one bus hook handler
#define DF_INOS_MAX_BUS_HOOKS 1024 |
Defines the maximum number of supported hooks in one bus hook handler
#define DF_INOS_MAX_HANDLERS_1MS 256 |
Defines the maximum number of supported 1ms handlers per core (needs to be a multiple of 32)
#define DF_INOS_MAX_TASKS 256 |
Defines the maximum number of supported tasks per core (needs to be a multiple of 32)
#define DF_INOS_MCDATA_MAX_SIZE 256 |
Default max length of McData. McData are, among others, used as the 'props' of McMessages. IOW: The max length of the INCO string vars used for registering the 'props'.
Default McTarget creation param's. Can be overwritten if e.g. the default queue size is not big enough
#define DF_INOS_MOVEPATH_CMD_QUEUE_SIZE 32 |
MovePath command queue size
#define DF_INOS_MOVEPATH_MAX_AXES 4 |
Max. number of supported axes in a movepath
#define DF_INOS_MOVEPATH_MAX_HELPERS 4 |
Number of supported move path helper tasks
#define DF_INOS_MOVEPATH_MAX_POINTS 512 |
Bitmask of max. number of supported axes
Max. number of supported points (just a temporary limit)
#define DF_INOS_MOVEPATH_MAX_STRING_LENGTH 63 |
Max. string length of movepath param
#define DF_INOS_NURBSCURVE_INTERPOLATION_POINTS 8 |
Default number of length interpolation points per NURBS span. This value is used if the number of required interpolation points is not explicitly provided at construction of the NURBS curve
#define DF_INOS_NURBSCURVE_MAX_DEGREE 5 |
Max. allowed nurbs curve degree
#define DF_INOS_PROCESSIMAGE_ANALOG_INPUTS_NUMBER 16384 |
Defines the max. number of analog inputs
#define DF_INOS_PROCESSIMAGE_ANALOG_OUTPUTS_NUMBER 16384 |
Defines the max. number of analog outputs
#define DF_INOS_PROCESSIMAGE_DIGITAL_INPUTS_NUMBER 16384 |
Defines the max. number of digital inputs
#define DF_INOS_PROCESSIMAGE_DIGITAL_OUTPUTS_NUMBER 16384 |
Defines the max. number of digital outputs
#define DF_INOS_PROCESSIMAGE_FIND_FIRST 0 |
Set this to 1 if the process image Find() function should return the first matching channel instead of the best match. This can improve performance for applications with many channels that frequently call the Find() function.
#define DF_INOS_PROCESSIMAGE_POSITION_NUMBER 16384 |
Defines the max. number of position channels
#define DF_INOS_SDRAM_SIZE_CORE0 (128*1024*1024) |
Defines the memory size of core 0 on asymmetric dual core systems (default is 128MB)
#define DF_INOS_STRINGPARAM_MAX_SIZE 512 |
Maximum size of CallProcedure string parameters. The upper limit for this is DF_INOS_TASKEXMSGPARAM_MAX_SIZE. This macro was introduced to increase async result size without increasing the memory usage due to existing string parameters all over the INCO tree.
#define DF_INOS_TASKEXMSGPARAM_MAX_SIZE 1024 |
Maximum taskexmsg param size. Corresponds to maximum size for a single async result. Use the same value as default partition size used by varlog to increase likelihood of reusing memory.
#define DF_INOS_TIMING_CHECKS_CORELOCK_MAX_TIME_US 15 |
If the "INOSCoreLock" timing check iDev feature is enabled, this defines the maximum allowed time in [us].
#define DF_INOS_TIMINIG_CHECKS_DISABLEINTERRUPTS_MAX_TIME_US 15 |
If the "INOSDisableInterrupts" timing check iDev feature is enabled, this defines the maximum allowed time in [us].
#define DF_INOS_TIMINIG_CHECKS_SUSPEND_MAX_TIME_US 1000 |
If the "Task suspension" timing check iDev feature is enabled, this defines the maximum allowed time in [us].
#define INOS_BASE_ADDRESS 0 |
Defines the INOS start address