#ifndef MOC_INTERNAL_CORE_SPU_H_ #define MOC_INTERNAL_CORE_SPU_H_ #include "../imoc_core.h" /** * \addtogroup internal_core **/ //@{ /** * @name SPU only **/ //@{ /** * Node-handle structure. * * \note SPU only * * Information each node knowns about himself and the world. **/ typedef struct moc_node_handle_spu_struct { uint8_t rank; /**< rank of node */ uint8_t comm_size; /**< number of overall processes */ uint8_t queue_size; /**< Size of a message-queue */ uint64_t ls_base; /**< Effective address of own local-store */ volatile moc_message_envelope_t* message_queue_base; /**< base-address of own message-queues */ volatile moc_message_status_t* status_array_base; /**< base-address of own message-status-array */ uint64_t buffer_base; /**< base-address of own buffer */ uint32_t buffer_size; /**< size of own buffer */ volatile moc_process_t* moc_process_list; /**< list of all other MOC-processes (index is rank of process) */ } moc_node_handle_spu_t; /**< typedef of \ref moc_node_handle_spu_struct */ /** * Information each node knowns about himself and the world. * * \note SPU only **/ moc_node_handle_spu_t node_handle; //@} //@} #endif /*MOC_INTERNAL_CORE_SPU_H_*/