LMMS
Loading...
Searching...
No Matches
juce_OutputStream.h
Go to the documentation of this file.
1/*
2 ==============================================================================
3
4 This file is part of the JUCE library.
5 Copyright (c) 2022 - Raw Material Software Limited
6
7 JUCE is an open source library subject to commercial or open-source
8 licensing.
9
10 The code included in this file is provided under the terms of the ISC license
11 http://www.isc.org/downloads/software-support-policy/isc-license. Permission
12 To use, copy, modify, and/or distribute this software for any purpose with or
13 without fee is hereby granted provided that the above copyright notice and
14 this permission notice appear in all copies.
15
16 JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
17 EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
18 DISCLAIMED.
19
20 ==============================================================================
21*/
22
23namespace juce
24{
25
26//==============================================================================
38{
39protected:
40 //==============================================================================
42
43public:
49 virtual ~OutputStream();
50
51 //==============================================================================
54 virtual void flush() = 0;
55
63 virtual bool setPosition (int64 newPosition) = 0;
64
69 virtual int64 getPosition() = 0;
70
71 //==============================================================================
82 virtual bool write (const void* dataToWrite,
83 size_t numberOfBytes) = 0;
84
85 //==============================================================================
90 virtual bool writeByte (char byte);
91
97 virtual bool writeBool (bool boolValue);
98
104 virtual bool writeShort (short value);
105
111 virtual bool writeShortBigEndian (short value);
112
117 virtual bool writeInt (int value);
118
123 virtual bool writeIntBigEndian (int value);
124
129 virtual bool writeInt64 (int64 value);
130
135 virtual bool writeInt64BigEndian (int64 value);
136
142 virtual bool writeFloat (float value);
143
149 virtual bool writeFloatBigEndian (float value);
150
156 virtual bool writeDouble (double value);
157
163 virtual bool writeDoubleBigEndian (double value);
164
168 virtual bool writeRepeatedByte (uint8 byte, size_t numTimesToRepeat);
169
181 virtual bool writeCompressedInt (int value);
182
196 virtual bool writeString (const String& text);
197
209 virtual bool writeText (const String& text,
210 bool asUTF16,
211 bool writeUTF16ByteOrderMark,
212 const char* lineEndings);
213
222 virtual int64 writeFromInputStream (InputStream& source, int64 maxNumBytesToWrite);
223
224 //==============================================================================
229
232
233private:
234 //==============================================================================
236
238};
239
240//==============================================================================
243
246
249
252
255
258
261
264
273
274} // namespace juce
#define noexcept
Definition DistrhoDefines.h:72
ostream & operator<<(ostream &out, const MidiEvent &ev)
Definition InMgr.cpp:9
Definition juce_File.h:45
Definition juce_InputStream.h:37
Definition juce_MemoryBlock.h:33
Definition juce_NewLine.h:40
Definition juce_OutputStream.h:38
virtual bool writeDoubleBigEndian(double value)
Definition juce_OutputStream.cpp:176
virtual bool writeDouble(double value)
Definition juce_OutputStream.cpp:169
virtual bool write(const void *dataToWrite, size_t numberOfBytes)=0
virtual bool writeRepeatedByte(uint8 byte, size_t numTimesToRepeat)
Definition juce_OutputStream.cpp:88
void setNewLineString(const String &newLineString)
Definition juce_OutputStream.cpp:321
OutputStream()
Definition juce_OutputStream.cpp:59
virtual bool writeInt64BigEndian(int64 value)
Definition juce_OutputStream.cpp:149
virtual int64 getPosition()=0
virtual bool writeFloat(float value)
Definition juce_OutputStream.cpp:155
virtual int64 writeFromInputStream(InputStream &source, int64 maxNumBytesToWrite)
Definition juce_OutputStream.cpp:296
String newLineString
Definition juce_OutputStream.h:235
virtual bool writeText(const String &text, bool asUTF16, bool writeUTF16ByteOrderMark, const char *lineEndings)
Definition juce_OutputStream.cpp:198
virtual bool writeCompressedInt(int value)
Definition juce_OutputStream.cpp:121
virtual bool writeByte(char byte)
Definition juce_OutputStream.cpp:83
virtual bool writeShort(short value)
Definition juce_OutputStream.cpp:97
virtual bool writeBool(bool boolValue)
Definition juce_OutputStream.cpp:77
virtual bool writeInt64(int64 value)
Definition juce_OutputStream.cpp:143
virtual bool writeIntBigEndian(int value)
Definition juce_OutputStream.cpp:115
virtual bool setPosition(int64 newPosition)=0
virtual bool writeShortBigEndian(short value)
Definition juce_OutputStream.cpp:103
virtual void flush()=0
virtual bool writeFloatBigEndian(float value)
Definition juce_OutputStream.cpp:162
virtual bool writeInt(int value)
Definition juce_OutputStream.cpp:109
const String & getNewLineString() const noexcept
Definition juce_OutputStream.h:231
virtual bool writeString(const String &text)
Definition juce_OutputStream.cpp:183
Definition juce_String.h:53
static PuglViewHint int value
Definition pugl.h:1708
JSAMPIMAGE data
Definition jpeglib.h:945
#define JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(className)
#define JUCE_CALLTYPE
#define JUCE_API
Definition juce_StandardHeader.h:152
Definition carla_juce.cpp:31
long long int64
Definition juce_MathsFunctions.h:54
unsigned char uint8
Definition juce_MathsFunctions.h:37
const char * text
Definition swell-functions.h:167
#define const
Definition zconf.h:137