| | |
| | | #ifndef DEFS_KP8LKGD0 |
| | | #define DEFS_KP8LKGD0 |
| | | |
| | | #include "robust.h" |
| | | #include <atomic> |
| | | #include <string> |
| | | |
| | |
| | | int64_t CalcAllocIndex(int64_t size); |
| | | int64_t GetAllocSize(int index); |
| | | |
| | | struct CenterInfo { |
| | | struct MQInfo { |
| | | int64_t id_ = 0; |
| | | int64_t offset_ = 0; |
| | | }; |
| | | struct MQInfo { |
| | | MQId id_ = 0; |
| | | int64_t offset_ = 0; |
| | | }; |
| | | |
| | | struct CenterInfo { |
| | | MQInfo mq_center_; |
| | | MQInfo mq_bus_; |
| | | MQInfo mq_init_; |
| | | MQInfo mq_sender_; |
| | | robust::AtomicReqRep init_rr_; |
| | | std::atomic<MQId> mqid_; |
| | | CenterInfo() : |
| | | mqid_(100000) {} |
| | |
| | | void GetLastError(int &ec, std::string &msg); |
| | | //TODO center can check shm for previous crash. |
| | | |
| | | uint64_t BHGlobalSenderAddress(); |
| | | uint64_t BHTopicCenterAddress(); |
| | | uint64_t BHTopicBusAddress(); |
| | | uint64_t BHCenterReplyAddress(); |
| | | const MQInfo &BHGlobalSenderAddress(); |
| | | const MQInfo &BHTopicCenterAddress(); |
| | | const MQInfo &BHTopicBusAddress(); |
| | | bool BHNodeInit(const int64_t request, int64_t &reply); |
| | | void BHCenterHandleInit(std::function<int64_t(const int64_t)> const &onReq); |
| | | |
| | | // node mq is avail with in timeout; after that may get killed. |
| | | int NodeTimeoutSec(); |
| | | |
| | | #endif // end of include guard: DEFS_KP8LKGD0 |