00001 #ifndef __GEMFIRE_SELECTRESULTS_H__ 00002 #define __GEMFIRE_SELECTRESULTS_H__ 00003 /*========================================================================= 00004 * Copyright (c) 2002-2014 Pivotal Software, Inc. All Rights Reserved. 00005 * This product is protected by U.S. and international copyright 00006 * and intellectual property laws. Pivotal products are covered by 00007 * more patents listed at http://www.pivotal.io/patents. 00008 *======================================================================== 00009 */ 00010 00015 #include "gfcpp_globals.hpp" 00016 #include "gf_types.hpp" 00017 #include "ExceptionTypes.hpp" 00018 #include "Serializable.hpp" 00019 #include "CacheableBuiltins.hpp" 00020 namespace gemfire 00021 { 00022 00023 class SelectResultsIterator ; 00024 00031 class CPPCACHE_EXPORT SelectResults : public SharedBase 00032 { 00033 00034 public: 00035 00041 virtual bool isModifiable() const = 0; 00042 00048 virtual int32_t size() const = 0; 00049 00057 virtual const SerializablePtr operator [] (int32_t index) const = 0; 00058 00064 virtual SelectResultsIterator getIterator() = 0; 00065 00067 typedef CacheableVector::Iterator Iterator; 00068 00070 virtual Iterator begin( ) const = 0; 00071 00073 virtual Iterator end( ) const = 0; 00074 }; 00075 00076 } //namespace gemfire 00077 00078 #endif //ifndef __GEMFIRE_SELECTRESULTS_H__