mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-17 10:31:46 +00:00
Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
e484bf4578 | ||
|
b442483dc3 | ||
|
727a709aff |
@@ -536,12 +536,14 @@ class Device
|
|||||||
|
|
||||||
/// @brief Returns name of the given state as a string
|
/// @brief Returns name of the given state as a string
|
||||||
/// @param state state
|
/// @param state state
|
||||||
static std::string GetStateName(const State state) { return GetStateName(state); }
|
[[deprecated("Use fair::mq::GetStateName from <fairmq/States.h> directly")]]
|
||||||
|
static std::string GetStateName(const State state) { return fair::mq::GetStateName(state); }
|
||||||
/// @brief Returns name of the given transition as a string
|
/// @brief Returns name of the given transition as a string
|
||||||
/// @param transition transition
|
/// @param transition transition
|
||||||
|
[[deprecated("Use fair::mq::GetTransitionName from <fairmq/States.h> directly")]]
|
||||||
static std::string GetTransitionName(const Transition transition)
|
static std::string GetTransitionName(const Transition transition)
|
||||||
{
|
{
|
||||||
return GetTransitionName(transition);
|
return fair::mq::GetTransitionName(transition);
|
||||||
}
|
}
|
||||||
|
|
||||||
static constexpr const char* DefaultId = "";
|
static constexpr const char* DefaultId = "";
|
||||||
|
@@ -88,6 +88,11 @@ struct ShmHeader
|
|||||||
return HdrPtr(ptr)->refCount;
|
return HdrPtr(ptr)->refCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static uint16_t UserOffset(char* ptr)
|
||||||
|
{
|
||||||
|
return HdrPartSize() + HdrPtr(ptr)->userOffset;
|
||||||
|
}
|
||||||
|
|
||||||
static char* UserPtr(char* ptr)
|
static char* UserPtr(char* ptr)
|
||||||
{
|
{
|
||||||
// [HdrOffset(uint16_t)][Hdr alignment][Hdr][user buffer alignment][user buffer]
|
// [HdrOffset(uint16_t)][Hdr alignment][Hdr][user buffer alignment][user buffer]
|
||||||
|
@@ -217,7 +217,9 @@ class Message final : public fair::mq::Message
|
|||||||
} else if (newSize <= fMeta.fSize) {
|
} else if (newSize <= fMeta.fSize) {
|
||||||
try {
|
try {
|
||||||
try {
|
try {
|
||||||
char* ptr = fManager.ShrinkInPlace(newSize, fManager.GetAddressFromHandle(fMeta.fHandle, fMeta.fSegmentId), fMeta.fSegmentId);
|
char* oldPtr = fManager.GetAddressFromHandle(fMeta.fHandle, fMeta.fSegmentId);
|
||||||
|
uint16_t userOffset = ShmHeader::UserOffset(oldPtr);
|
||||||
|
char* ptr = fManager.ShrinkInPlace(userOffset + newSize, oldPtr, fMeta.fSegmentId);
|
||||||
fLocalPtr = ShmHeader::UserPtr(ptr);
|
fLocalPtr = ShmHeader::UserPtr(ptr);
|
||||||
fMeta.fSize = newSize;
|
fMeta.fSize = newSize;
|
||||||
return true;
|
return true;
|
||||||
|
Reference in New Issue
Block a user