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)
246JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream,
int number);
249JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream, int64 number);
252JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream,
double number);
255JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream,
char character);
258JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream,
const char* text);
261JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream,
const MemoryBlock& data);
264JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream,
const File& fileToRead);
267JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream, InputStream& streamToRead);
276JUCE_API OutputStream& JUCE_CALLTYPE operator<< (OutputStream& stream,
const NewLine&);
The base class for streams that write data to some kind of destination.
virtual bool write(const void *dataToWrite, size_t numberOfBytes)=0
Writes a block of data to the stream.
virtual int64 getPosition()=0
Returns the stream's current position.
virtual bool setPosition(int64 newPosition)=0
Tries to move the stream's output position.
virtual void flush()=0
If the stream is using a buffer, this will ensure it gets written out to the destination.
const String & getNewLineString() const noexcept
Returns the current new-line string that was set by setNewLineString().
#define JUCE_API
This macro is added to all JUCE public class declarations.