Lines Matching defs:buffer
707 void Buffer_init (Buffer* buffer)
709 buffer->capacity = 0;
710 buffer->size = 0;
711 buffer->data = DE_NULL;
714 void Buffer_deinit (Buffer* buffer)
716 deFree(buffer->data);
717 Buffer_init(buffer);
720 deBool Buffer_resize (Buffer* buffer, size_t newSize)
722 /* Grow buffer if necessary. */
723 if (newSize > buffer->capacity)
725 size_t newCapacity = (size_t)deAlign32(deMax32(2*(int)buffer->capacity, (int)newSize), 512);
730 if (buffer->data)
731 memcpy(newData, buffer->data, buffer->size);
733 deFree(buffer->data);
734 buffer->data = newData;
735 buffer->capacity = newCapacity;
738 buffer->size = newSize;
742 deBool Buffer_append (Buffer* buffer, const deUint8* data, size_t numBytes)
744 size_t offset = buffer->size;
746 if (!Buffer_resize(buffer, buffer->size + numBytes))
750 memcpy(&buffer->data[offset], data, numBytes);
757 Buffer* buffer = (Buffer*)png_get_io_ptr(png);
758 if (!Buffer_append(buffer, (const deUint8*)dataPtr, numBytes))
759 png_error(png, "unable to resize PNG write buffer!");
789 static deBool compressImagePNG (Buffer* buffer, qpImageFormat imageFormat, int width, int height, int rowStride, const void* data)
815 png_set_write_fn(png, buffer, pngWriteData, pngFlushData);