| 
    PLCnext API Documentation
    20.6.0.30321
    
   | 
 

Classes | |
| class | Allocator | 
| class | Mutex | 
| class | NullMutex | 
| class | ScopedLock | 
Public Types | |
| typedef SharedMemory | Base | 
| typedef Derived | DerivedType | 
| typedef AppDomainSingleton< Derived > | SingletonBase | 
| typedef boost::interprocess::managed_shared_memory | SharedMemory | 
| typedef SharedMemory::segment_manager | SegmentManager | 
| typedef boost::interprocess::permissions | SharedMemoryPermission | 
| template<class T > | |
| using | Ptr = boost::interprocess::offset_ptr< T > | 
| template<class T > | |
| using | ConstPtr = boost::interprocess::offset_ptr< const T > | 
| typedef boost::interprocess::basic_string< char, std::char_traits< char >, Allocator< char > > | String | 
| template<class T > | |
| using | vector = boost::interprocess::vector< T, Allocator< T > > | 
| template<class T > | |
| using | list = boost::interprocess::list< T, Allocator< T > > | 
| template<class TKey , class TValue , class TCompare = std::less<TKey>> | |
| using | map = boost::interprocess::map< TKey, TValue, TCompare, Allocator< std::pair< const TKey, TValue > >> | 
| template<class TKey , class TCompare = std::less<TKey>> | |
| using | set = boost::interprocess::set< TKey, TCompare, Allocator< TKey > > | 
  Public Types inherited from Arp::System::Commons::Ipc::SharedMemory | |
| typedef boost::interprocess::managed_shared_memory | SharedMemoryImpl | 
| typedef SharedMemoryImpl::segment_manager | SegmentManager | 
| typedef boost::interprocess::permissions | SharedMemoryPermission | 
| template<class T > | |
| using | Ptr = boost::interprocess::offset_ptr< T > | 
| Returned pointer types are shared memory based offset pointer. More... | |
Static Public Member Functions | |
| static ARP_CXX_SYMBOL_EXPORT void | CreateInstance (size_t memorySize) | 
| static void | OpenInstance (void) | 
| static void | CloseInstance (bool removeMemory=false) | 
| static void | Remove (void) | 
| static void | WaitInstance (const char *waitMessage, uint32 timeout=-1) | 
  Static Public Member Functions inherited from Arp::AppDomainSingleton< Derived > | |
| template<class T = Instance, class ... Args> | |
| static Derived & | CreateInstance (Args &&... args) | 
| Creates this singleton instance. More... | |
| static bool | IsCreated (void) | 
| Determines if this singleton instance is created yet. More... | |
| static Derived & | GetInstance (void) | 
| Gets a reference of the singleton instance. More... | |
| static Derived * | GetInstancePtr (void) | 
| Gets a pointer to the singleton instance. More... | |
| static void | DisposeInstance (void) | 
| Disposes this singleton instance. More... | |
Protected Member Functions | |
| SharedData (size_t memorySize) | |
  Protected Member Functions inherited from Arp::AppDomainSingleton< Derived > | |
| AppDomainSingleton (void)=default | |
| The protected default constructor. More... | |
| ~AppDomainSingleton (void)=default | |
| The protected default destructor. More... | |
Friends | |
| template<class T > | |
| class | Allocator | 
Additional Inherited Members | |
  Public Member Functions inherited from Arp::System::Commons::Ipc::SharedMemory | |
| SharedMemory (const char *name) | |
| Opens an existing shared memory. More... | |
| SharedMemory (const char *name, size_t memorySize) | |
| Creates an non-existing instance, throws if yet exists. More... | |
| ~SharedMemory (void)=default | |
| Deallocates the memory for this management object but not the memory shared between processes. More... | |
| void | Remove (void) | 
| Removes the shared memory from the system. More... | |
| const Arp::String & | GetName (void) const | 
| Returns the name of the memory object. More... | |
| size_t | GetSize (void) const | 
| Returns the capacity of the shared memory in bytes. More... | |
| byte * | Allocate (size_t size) | 
Tries to allocate size amount of bytes in the memory. More... | |
| void | Deallocate (byte *pMemory) | 
Marks the memory pointed to by pMemory available for new allocation requests. More... | |
| template<class T > | |
| Ptr< T > | Get (const char *name) | 
| Tries to find a previously allocated named object. More... | |
| template<class T , typename ... TArgs> | |
| Ptr< T > | GetOrConstruct (const char *name, TArgs... args) | 
Tries to find object identified by name, creates a new one if the object does not exists yet. More... | |
| template<class T , typename ... TArgs> | |
| Ptr< T > | Construct (const char *name, TArgs... args) | 
| Creates a named object in the shared memory. More... | |
| template<class T , typename ... TArgs> | |
| Ptr< T > | ConstructUnnamed (TArgs... args) | 
| Creates an unnamed object in the shared memory. More... | |
| template<class T > | |
| void | Destroy (const char *name) | 
| Deallocates the object in the shared memory, also calling the objects destructor. More... | |
| size_t | GetFreeMemory (void) const | 
| Obtain the number of free bytes in the shared memory. More... | |
| void | ZeroFreeMemory (void) | 
| Writes zero in all bytes not yet allocated. More... | |
| bool | AllMemoryDeallocated (void) | 
| Checks if all memory has been deallocated. More... | |
| bool | CheckSanity (void) | 
| Performs a sanity check over the shared memory. More... | |
  Protected Types inherited from Arp::AppDomainSingleton< Derived > | |
| typedef AppDomainSingleton< Derived > | SingletonBase | 
| Defines this type to be used from derived classes. More... | |
  Protected Attributes inherited from Arp::System::Commons::Ipc::SharedMemory | |
| Arp::String | memoryName | 
| Name of memory identifying the shared memory inside the operating system. More... | |
| SharedMemoryImpl | sharedMemoryImpl | 
| Actual implementation of the shared memory functionality. More... | |
 1.8.13