/*
* ico_time.h - contains defines for time services
*
* Copyright (c) 2012-2019 emotas embedded communication GmbH
*
*-------------------------------------------------------------------
* $Id: ico_time.h 48620 2023-08-28 14:18:44Z boe $

*-------------------------------------------------------------------
*
*
*/

/**
* \file
* \brief dataty type header
*/

#ifndef ICO_TIME_H
#define ICO_TIME_H 1

#ifdef CO_EVENT_DYNAMIC_TIME
# ifdef CO_EVENT_PROFILE_TIME
#  define CO_EVENT_TIME_CNT	(CO_EVENT_DYNAMIC_TIME + CO_EVENT_PROFILE_TIME)
# else /* CO_EVENT_PROFILE_TIME */
#  define CO_EVENT_TIME_CNT	(CO_EVENT_DYNAMIC_TIME)
# endif /* CO_EVENT_PROFILE_TIME */
#else /* CO_EVENT_DYNAMIC_TIME */
# ifdef CO_EVENT_PROFILE_TIME
#  define CO_EVENT_TIME_CNT	(CO_EVENT_PROFILE_TIME)
# endif /* CO_EVENT_PROFILE_TIME */
#endif /* CO_EVENT_DYNAMIC_TIME */


/* datatypes */

/* function prototypes */

void	icoTimeReset(CO_LINE_DECL);
void	icoTimeSetDefaultValue(CO_LINE_DECL);
void	*icoTimeGetObjectAddr(CO_LINE_DECL);
RET_T	icoTimeCheckObjLimit_u32(CO_LINE_DECL, UNSIGNED32	value);
RET_T	icoTimeObjChanged(CO_LINE_DECL);
void	icoTimeHandler(CO_LINE_DECL, const UNSIGNED8 *pData);
void	icoTimeVarInit(void);

#endif /* ICO_TIME_H */

