36 template <
class OutType>
69 if (
page !=
nullptr) {
75 temp = makeObject<KeepGoing>();
77 std::cout <<
"Problem sending request: " << errMsg <<
"\n";
85 size_t objSize =
connection->getSizeOfNextObject();
88 if (
connection->getObjectTypeID() == DoneWithResult_TYPEID) {
92 #ifdef ENABLE_COMPRESSION
93 char* readToHere =
new char[objSize];
95 void* readToHere = malloc(objSize);
99 if (!
connection->receiveBytes(readToHere, errMsg)) {
100 std::cout <<
"Problem getting data: " << errMsg <<
"\n";
104 size_t uncompressedSize = 0;
105 snappy::GetUncompressedLength(readToHere, objSize, &uncompressedSize);
107 #ifdef ENABLE_COMPRESSION
108 snappy::RawUncompress(readToHere, objSize, (
char*)(
page));
110 memcpy(
page, readToHere, objSize);
113 #ifdef ENABLE_COMPRESSION
169 std::cout <<
"Problem sending done message: " << errMsg <<
"\n";
173 PDB_COUT <<
"send done message" << std::endl;
std::shared_ptr< PDBCommunicator > PDBCommunicatorPtr
Record< Vector< Handle< OutType > > > * page
bool operator!=(const OutputIterator &me) const
OutputIterator(PDBCommunicatorPtr connectionIn)
Handle< Vector< Handle< OutType > > > data
PDBCommunicatorPtr connection
Handle< OutType > & operator*() const