cpp: PixelBuffer: Add virtual destructors and protect the PixelBufferBase constructor