75 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
| * co_manager.h - contains defines for nmt services
 | |
| *
 | |
| * Copyright (c) 2014-2023 emotas embedded communication GmbH
 | |
| *
 | |
| *-------------------------------------------------------------------
 | |
| * $Id: co_manager.h 48603 2023-08-28 12:21:17Z boe $
 | |
| *-------------------------------------------------------------------
 | |
| *
 | |
| *
 | |
| */
 | |
| 
 | |
| /**
 | |
| * \brief defines for bootup manager services
 | |
| *
 | |
| * \file co_manager.h - contains defines for bootup manager services
 | |
| *
 | |
| */
 | |
| 
 | |
| #ifndef CO_MANAGER_H
 | |
| #define CO_MANAGER_H 1
 | |
| 
 | |
| #include <co_datatype.h>
 | |
| 
 | |
| 
 | |
| /* datatypes */
 | |
| 
 | |
| /**
 | |
| * manager bootup events
 | |
| */
 | |
| typedef enum {
 | |
| 	CO_MANAGER_EVENT_BOOT,			/**< node x start boot */
 | |
| 	CO_MANAGER_EVENT_ERROR_B,		/**< node x read 0x1000 failed */
 | |
| 	CO_MANAGER_EVENT_ERROR_C,		/**< node x check device type failed */
 | |
| 	CO_MANAGER_EVENT_ERROR_D,		/**< node x check vendor id type failed */
 | |
| 	CO_MANAGER_EVENT_ERROR_J,		/**< node x check configuration failed */
 | |
| 	CO_MANAGER_EVENT_ERROR_G,		/**< node x update configuration failed */
 | |
| 	CO_MANAGER_EVENT_ERROR_K,		/**< node x start errctl failed */
 | |
| 	CO_MANAGER_EVENT_ERROR_M,		/**< node x check product code failed */
 | |
| 	CO_MANAGER_EVENT_ERROR_N,		/**< node x check version nr failed */
 | |
| 	CO_MANAGER_EVENT_ERROR_O,		/**< node x check serial nr failed */
 | |
| 	CO_MANAGER_EVENT_UPDATE_SW,		/**< node x software update necessary */
 | |
| 	CO_MANAGER_EVENT_UPDATE_CONFIG,	/**< node x update config necessary */
 | |
| 	CO_MANAGER_EVENT_BOOTED,		/**< node x boot successfully */
 | |
| 	CO_MANAGER_EVENT_ERROR_NODE,	/**< node x failure heartbeat */
 | |
| 	CO_MANAGER_EVENT_RDY_OPERATIONAL,/**< manager ready for OPERATIONAL */
 | |
| 	CO_MANAGER_EVENT_FAILURE,		/**< bootup failure about mandatory slave*/
 | |
| 	CO_MANAGER_EVENT_FINISHED		/**< bootup finished without errors */
 | |
| } CO_MANAGER_EVENT_T;
 | |
| 
 | |
| 
 | |
| /** \brief function pointer to manager event function 
 | |
|  * \param node - node id for event (0 = manager event)
 | |
|  * \param event - event type from CO_MANAGER_EVENT_T
 | |
|  * 
 | |
|  * \return void
 | |
|  *
 | |
|  */
 | |
| typedef void (* CO_EVENT_MANAGER_BOOTUP_T)(UNSIGNED8, CO_MANAGER_EVENT_T); /*lint !e960 customer specific parameter names */
 | |
| 
 | |
| 
 | |
| 
 | |
| /* function prototypes */
 | |
| EXTERN_DECL RET_T	coEventRegister_MANAGER_BOOTUP(
 | |
| 					CO_EVENT_MANAGER_BOOTUP_T pFunction);
 | |
| EXTERN_DECL RET_T	coManagerStart(void);
 | |
| EXTERN_DECL RET_T	coManagerContinueSwUpdate(UNSIGNED8 slave,
 | |
| 					RET_T result);
 | |
| EXTERN_DECL RET_T	coManagerContinueConfigUpdate(UNSIGNED8 slave,
 | |
| 					RET_T result);
 | |
| EXTERN_DECL RET_T	coManagerContinueOperational(void);
 | |
| EXTERN_DECL UNSIGNED8	coManagerGetUsedSdoChannel(UNSIGNED8 slave);
 | |
| 
 | |
| #endif /* CO_MANAGER_H */
 |