lintel 0.2.0
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
ShmConstructors.h File Reference
#include <boost/container/map.hpp>
#include <boost/container/string.hpp>
#include <boost/container/vector.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <boost/interprocess/managed_mapped_file.hpp>
#include <boost/interprocess/sync/named_semaphore.hpp>
#include <array>
#include <chrono>
#include <cstddef>
#include <functional>
#include <memory>
#include <mutex>
#include <stdexcept>
#include <string>
#include <utility>
#include "lintel/core/models/SharedMemorySegment.h"
#include "lintel/core/shm/ShmSegmentAccessor.h"
#include "lintel/features/base/services/SharedMemoryService.h"

Go to the source code of this file.

Classes

class  lintel::SharedMemorySegmentHandle
 
class  lintel::shm::SegmentSemaphoreGuard
 

Namespaces

namespace  lintel
 
namespace  lintel::shm
 

Typedefs

using lintel::shm::SegmentManager = boost::interprocess::managed_mapped_file::segment_manager
 
template<class Object >
using lintel::shm::SegmentAllocator = boost::interprocess::allocator< Object, SegmentManager >
 
using lintel::shm::String = boost::container::basic_string< char, std::char_traits< char >, SegmentAllocator< char > >
 
template<class Key , class Value >
using lintel::shm::Map = boost::container::map< Key, Value, std::less< Key >, SegmentAllocator< std::pair< const Key, Value > > >
 
template<class Object >
using lintel::shm::Vector = boost::container::vector< Object, SegmentAllocator< Object > >
 

Functions

template<class Object , std::size_t Size>
std::array< Object, Size > & lintel::shm::constructArray (SharedMemoryService &service, const std::shared_ptr< SharedMemorySegment > &segment, const std::string &name)
 
template<class Key , class Value >
Map< Key, Value > & lintel::shm::constructMap (SharedMemoryService &service, const std::shared_ptr< SharedMemorySegment > &segment, const std::string &name)
 
template<class Object >
Vector< Object > & lintel::shm::constructVector (SharedMemoryService &service, const std::shared_ptr< SharedMemorySegment > &segment, const std::string &name)
 
template<class Object >
Object & lintel::shm::constructObject (SharedMemoryService &service, const std::shared_ptr< SharedMemorySegment > &segment, const std::string &name)
 
template<class Object , class... Args>
Object & lintel::shm::constructObjectWith (SharedMemoryService &service, const std::shared_ptr< SharedMemorySegment > &segment, const std::string &name, Args &&...args)
 
String lintel::shm::constructString (SharedMemoryService &service, const std::shared_ptr< SharedMemorySegment > &segment, const std::string &name)
 
SegmentManager * lintel::shm::segmentManagerOf (SharedMemoryService &service, const std::shared_ptr< SharedMemorySegment > &segment)