58 virtual void flush() = 0;
67 virtual bool setPosition (int64 newPosition) = 0;
73 virtual int64 getPosition() = 0;
86 virtual bool write (
const void* dataToWrite,
87 size_t numberOfBytes) = 0;
94 virtual bool writeByte (
char byte);
101 virtual bool writeBool (
bool boolValue);
108 virtual bool writeShort (
short value);
115 virtual bool writeShortBigEndian (
short value);
121 virtual bool writeInt (
int value);
127 virtual bool writeIntBigEndian (
int value);
133 virtual bool writeInt64 (int64 value);
139 virtual bool writeInt64BigEndian (int64 value);
146 virtual bool writeFloat (
float value);
153 virtual bool writeFloatBigEndian (
float value);
160 virtual bool writeDouble (
double value);
167 virtual bool writeDoubleBigEndian (
double value);
172 virtual bool writeRepeatedByte (uint8 byte,
size_t numTimesToRepeat);
185 virtual bool writeCompressedInt (
int value);
200 virtual bool writeString (
const String& text);
213 virtual bool writeText (
const String& text,
215 bool writeUTF16ByteOrderMark,
216 const char* lineEndings);
226 virtual int64 writeFromInputStream (
InputStream& source, int64 maxNumBytesToWrite);
232 void setNewLineString (
const String& newLineString);
241 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (
OutputStream)
#define JUCE_API
This macro is added to all JUCE public class declarations.
This class is used for represent a new-line character sequence.
const String & getNewLineString() const noexcept
Returns the current new-line string that was set by setNewLineString().
Represents a local file or directory.
The base class for streams that write data to some kind of destination.
A class to hold a resizable block of raw data.