objdictgen/examples/example_objdict.h
author Robert Lehmann <robert.lehmann@sitec-systems.de>
Tue, 28 Jul 2015 16:36:55 +0200
changeset 793 72e9e1064432
parent 623 36b62c854ee2
permissions -rw-r--r--
timers_unix: Fix termination problem of WaitReceiveTaskEnd

The function pthread_kill sends the Signal thread and to the own process.
If you use this construct than the application which calls uses the
canfestival api will terminate at the call of canClose. To avoid that
use pthread_cancel instead of pthread_kill. To use the pthread_cancel call
you need to set the cancel ability in the thread function. That means
you need to call pthread_setcancelstate and pthread_setcanceltype.
For the termination of the thread at any time it is important to set the
cancel type to PTHREAD_CANCEL_ASYNCHRONOUS.

/* File generated by gen_cfile.py. Should not be modified. */

#ifndef EXAMPLE_OBJDICT_H
#define EXAMPLE_OBJDICT_H

#include "data.h"

/* Prototypes of function provided by object dictionnary */
UNS32 Linux_slave_valueRangeTest (UNS8 typeValue, void * value);
const indextable * Linux_slave_scanIndexOD (UNS16 wIndex, UNS32 * errorCode, ODCallback_t **callbacks);

/* Master node data struct */
extern CO_Data Linux_slave_Data;
extern UNS8 Time_seconds;		/* Mapped at index 0x2000, subindex 0x01 */
extern UNS8 Time_minutes;		/* Mapped at index 0x2000, subindex 0x02 */
extern UNS8 Time_hours;		/* Mapped at index 0x2000, subindex 0x03 */
extern UNS8 Time_days;		/* Mapped at index 0x2000, subindex 0x04 */
extern UNS32 canopenErrNB;		/* Mapped at index 0x2001, subindex 0x00*/
extern UNS32 canopenErrVal;		/* Mapped at index 0x2002, subindex 0x00*/
extern INTEGER8 strTest[10];		/* Mapped at index 0x2003, subindex 0x00*/

#endif // EXAMPLE_OBJDICT_H