20#ifndef GEODE_CACHEABLEOBJECTARRAY_H_ 
   21#define GEODE_CACHEABLEOBJECTARRAY_H_ 
   26#include "Serializable.hpp" 
   27#include "internal/DSCode.hpp" 
   28#include "internal/DataSerializablePrimitive.hpp" 
   29#include "internal/geode_globals.hpp" 
   48    : 
public internal::DataSerializablePrimitive,
 
   49      public std::vector<std::shared_ptr<Cacheable>> {
 
   56      : std::vector<std::shared_ptr<
Cacheable>>(n) {}
 
   63  void toData(
DataOutput& output) const override;
 
   65  virtual 
void fromData(
DataInput& input) override;
 
   70  inline static std::shared_ptr<
Serializable> createDeserializable() {
 
   71    return std::make_shared<CacheableObjectArray>();
 
   74  internal::DSCode getDsCode()
 const override {
 
   75    return internal::DSCode::CacheableObjectArray;
 
   81  inline static std::shared_ptr<CacheableObjectArray> 
create() {
 
   82    return std::make_shared<CacheableObjectArray>();
 
   89  inline static std::shared_ptr<CacheableObjectArray> 
create(int32_t n) {
 
   90    return std::make_shared<CacheableObjectArray>(n);
 
   93  virtual size_t objectSize() 
const override;
 
Implements an immutable Vector of Cacheable objects that can serve as a distributable object for cach...
Definition: CacheableObjectArray.hpp:49
static std::shared_ptr< CacheableObjectArray > create(int32_t n)
Factory method for creating an instance of CacheableObjectArray with given size.
Definition: CacheableObjectArray.hpp:89
CacheableObjectArray(int32_t n)
Create a vector with n elements allocated.
Definition: CacheableObjectArray.hpp:55
static std::shared_ptr< CacheableObjectArray > create()
Factory method for creating the default instance of CacheableObjectArray.
Definition: CacheableObjectArray.hpp:81
CacheableObjectArray()
Constructor, used for deserialization.
Definition: CacheableObjectArray.hpp:52
Provide operations for reading primitive data values, byte arrays, strings, Serializable objects from...
Definition: DataInput.hpp:59
Provide operations for writing primitive data values, byte arrays, strings, Serializable objects to a...
Definition: DataOutput.hpp:48
This base class is the superclass of all user objects in the cache that can be serialized.
Definition: Serializable.hpp:53