VMware GemFire Native C++ Reference  9.1
CacheableObjectArray.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #ifndef GEODE_CACHEABLEOBJECTARRAY_H_
4 #define GEODE_CACHEABLEOBJECTARRAY_H_
5 
6 /*
7  * Licensed to the Apache Software Foundation (ASF) under one or more
8  * contributor license agreements. See the NOTICE file distributed with
9  * this work for additional information regarding copyright ownership.
10  * The ASF licenses this file to You under the Apache License, Version 2.0
11  * (the "License"); you may not use this file except in compliance with
12  * the License. You may obtain a copy of the License at
13  *
14  * http://www.apache.org/licenses/LICENSE-2.0
15  *
16  * Unless required by applicable law or agreed to in writing, software
17  * distributed under the License is distributed on an "AS IS" BASIS,
18  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  * See the License for the specific language governing permissions and
20  * limitations under the License.
21  */
22 
23 #include "geode_globals.hpp"
24 #include "geode_types.hpp"
25 #include "VectorT.hpp"
26 
30 namespace apache {
31 namespace geode {
32 namespace client {
33 
39  public _VectorOfCacheable {
40  public:
42 
46  virtual void toData(DataOutput& output) const;
47 
51  virtual Serializable* fromData(DataInput& input);
52 
57  return new CacheableObjectArray();
58  }
59 
65  virtual int32_t classId() const;
66 
72  virtual int8_t typeId() const;
73 
77  inline static CacheableObjectArrayPtr create() {
79  }
80 
85  inline static CacheableObjectArrayPtr create(int32_t n) {
87  }
88 
89  virtual uint32_t objectSize() const;
90 
91  protected:
95  inline CacheableObjectArray(int32_t n) : _VectorOfCacheable(n) {}
96 
97  private:
98  // never implemented.
99  CacheableObjectArray& operator=(const CacheableObjectArray& other);
101 };
102 } // namespace client
103 } // namespace geode
104 } // namespace apache
105 
106 #endif // GEODE_CACHEABLEOBJECTARRAY_H_
Each enum represents a predefined RegionAttributes in a Cache.
Definition: Assert.hpp:31
static CacheableObjectArrayPtr create(int32_t n)
Factory method for creating an instance of CacheableObjectArray with given size.
Definition: CacheableObjectArray.hpp:85
Implement an immutable Vector of Cacheable objects that can serve as a distributable object for cachi...
Definition: CacheableObjectArray.hpp:38
#define CPPCACHE_EXPORT
Defines a Geode CPPCACHE export.
Definition: geode_base.hpp:58
static Serializable * createDeserializable()
creation function for java Object[]
Definition: CacheableObjectArray.hpp:56
CacheableObjectArray()
Constructor, used for deserialization.
Definition: CacheableObjectArray.hpp:93
Interface of an iterator for VectorT.
Definition: VectorT.hpp:43
Provide operations for writing primitive data values, byte arrays, strings, Serializable objects to a...
Definition: DataOutput.hpp:74
Defines a reference counted shared pointer.
Definition: SharedPtr.hpp:52
This abstract base class is the superclass of all user objects in the cache that can be serialized...
Definition: Serializable.hpp:53
CacheableObjectArray(int32_t n)
Create a vector with n elements allocated.
Definition: CacheableObjectArray.hpp:95
Vector template type class.
Definition: VectorT.hpp:37
Provide operations for reading primitive data values, byte arrays, strings, Serializable objects from...
Definition: DataInput.hpp:56
static CacheableObjectArrayPtr create()
Factory method for creating the default instance of CacheableObjectArray.
Definition: CacheableObjectArray.hpp:77
This namespace contains all the Geode C++ API classes, enumerations and globals.

Pivotal GemFire C++ Cache API Documentation