Rename base class to something more in line with it's actual function.

This commit is contained in:
Daniel Patterson 2016-11-10 16:56:56 -08:00
parent 33ff92d27e
commit b1125b7f1f
3 changed files with 23 additions and 14 deletions

View File

@ -1,5 +1,5 @@
#ifndef SHARED_DATAFACADE_HPP
#define SHARED_DATAFACADE_HPP
#ifndef MEMORYBLOCK_DATAFACADE_HPP
#define MEMORYBLOCK_DATAFACADE_HPP
// implements all data storage when shared memory _IS_ used
@ -44,10 +44,17 @@ namespace engine
namespace datafacade
{
class MemoryDataFacadeBase : public BaseDataFacade
/**
* This base class implements the Datafacade interface for accessing
* data that's stored in a single large block of memory.
*/
class BigRAMBlockDataFacadeBase : public BaseDataFacade
{
protected:
storage::DataLayout *data_layout;
char *memory_block;
private:
using super = BaseDataFacade;
using QueryGraph = util::StaticGraph<EdgeData, true>;
using GraphNode = QueryGraph::NodeArrayEntry;
@ -60,13 +67,8 @@ class MemoryDataFacadeBase : public BaseDataFacade
using SharedGeospatialQuery = GeospatialQuery<SharedRTree, BaseDataFacade>;
using RTreeNode = SharedRTree::TreeNode;
storage::DataLayout *data_layout;
char *memory_block;
unsigned m_check_sum;
std::unique_ptr<QueryGraph> m_query_graph;
std::unique_ptr<storage::SharedMemory> m_layout_memory;
std::unique_ptr<storage::SharedMemory> m_large_memory;
std::string m_timestamp;
extractor::ProfileProperties *m_profile_properties;
@ -932,4 +934,4 @@ class MemoryDataFacadeBase : public BaseDataFacade
}
}
#endif // SHARED_DATAFACADE_HPP
#endif // MEMORYBLOCK_DATAFACADE_HPP

View File

@ -3,7 +3,7 @@
// implements all data storage when shared memory is _NOT_ used
#include "engine/datafacade/memory_datafacade_base.hpp"
#include "engine/datafacade/bigramblock_datafacade_base.hpp"
#include "storage/storage.hpp"
namespace osrm
@ -21,7 +21,7 @@ namespace datafacade
* This class holds a unique_ptr to the memory block, so it
* is auto-freed upon destruction.
*/
class InternalDataFacade final : public MemoryDataFacadeBase
class InternalDataFacade final : public BigRAMBlockDataFacadeBase
{
private:

View File

@ -6,7 +6,7 @@
#include "storage/shared_barriers.hpp"
#include "storage/shared_datatype.hpp"
#include "storage/shared_memory.hpp"
#include "engine/datafacade/memory_datafacade_base.hpp"
#include "engine/datafacade/bigramblock_datafacade_base.hpp"
namespace osrm
{
@ -15,10 +15,17 @@ namespace engine
namespace datafacade
{
class SharedDataFacade : public MemoryDataFacadeBase
/**
* This datafacade uses an IPC shared memory block as the data location.
* Many SharedDataFacade objects can be created that point to the same shared
* memory block.
*/
class SharedDataFacade : public BigRAMBlockDataFacadeBase
{
protected:
std::unique_ptr<storage::SharedMemory> m_layout_memory;
std::unique_ptr<storage::SharedMemory> m_large_memory;
std::shared_ptr<storage::SharedBarriers> shared_barriers;
storage::SharedDataType layout_region;
storage::SharedDataType data_region;