The JUCE cross-platform C++ framework, with DISTRHO/KXStudio specific changes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

412 lines
21KB

  1. /*
  2. ==============================================================================
  3. This file is part of the JUCE library - "Jules' Utility Class Extensions"
  4. Copyright 2004-9 by Raw Material Software Ltd.
  5. ------------------------------------------------------------------------------
  6. JUCE can be redistributed and/or modified under the terms of the GNU General
  7. Public License (Version 2), as published by the Free Software Foundation.
  8. A copy of the license is included in the JUCE distribution, or can be found
  9. online at www.gnu.org/licenses.
  10. JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
  11. WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
  12. A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  13. ------------------------------------------------------------------------------
  14. To release a closed-source product which uses JUCE, commercial licenses are
  15. available: visit www.rawmaterialsoftware.com/juce for more information.
  16. ==============================================================================
  17. */
  18. /*
  19. This monolithic file contains the entire Juce source tree!
  20. To build an app which uses Juce, all you need to do is to add this
  21. file to your project, and include juce.h in your own cpp files.
  22. */
  23. #ifdef __JUCE_JUCEHEADER__
  24. /* When you add the amalgamated cpp file to your project, you mustn't include it in
  25. a file where you've already included juce.h - just put it inside a file on its own,
  26. possibly with your config flags preceding it, but don't include anything else. */
  27. #error
  28. #endif
  29. #include "../src/core/juce_TargetPlatform.h" // FORCE_AMALGAMATOR_INCLUDE
  30. #include "../juce_Config.h" // FORCE_AMALGAMATOR_INCLUDE
  31. #ifndef JUCE_BUILD_CORE
  32. #define JUCE_BUILD_CORE 1
  33. #endif
  34. #ifndef JUCE_BUILD_MISC
  35. #define JUCE_BUILD_MISC 1
  36. #endif
  37. #ifndef JUCE_BUILD_GUI
  38. #define JUCE_BUILD_GUI 1
  39. #endif
  40. #ifndef JUCE_BUILD_NATIVE
  41. #define JUCE_BUILD_NATIVE 1
  42. #endif
  43. #if JUCE_ONLY_BUILD_CORE_LIBRARY
  44. #undef JUCE_BUILD_MISC
  45. #undef JUCE_BUILD_GUI
  46. #endif
  47. //==============================================================================
  48. #if JUCE_BUILD_NATIVE || JUCE_BUILD_CORE || (JUCE_BUILD_MISC && (JUCE_PLUGINHOST_VST || JUCE_PLUGINHOST_AU))
  49. #if JUCE_WINDOWS
  50. #include "../src/native/windows/juce_win32_NativeIncludes.h"
  51. #elif JUCE_LINUX
  52. #include "../src/native/linux/juce_linux_NativeIncludes.h"
  53. #elif JUCE_MAC || JUCE_IOS
  54. #include "../src/native/mac/juce_mac_NativeIncludes.h"
  55. #elif JUCE_ANDROID
  56. #include "../src/native/android/juce_android_NativeIncludes.h"
  57. #else
  58. #error "Unknown platform!"
  59. #endif
  60. #endif
  61. //==============================================================================
  62. #define DONT_SET_USING_JUCE_NAMESPACE 1
  63. #undef max
  64. #undef min
  65. #define NO_DUMMY_DECL
  66. #define JUCE_AMALGAMATED_TEMPLATE 1
  67. #if JUCE_BUILD_NATIVE
  68. #include "../juce_amalgamated.h" // FORCE_AMALGAMATOR_INCLUDE
  69. #endif
  70. #if (defined(_MSC_VER) && (_MSC_VER <= 1200))
  71. #pragma warning (disable: 4309 4305)
  72. #endif
  73. #if JUCE_MAC && JUCE_32BIT && JUCE_SUPPORT_CARBON && JUCE_BUILD_NATIVE && ! JUCE_ONLY_BUILD_CORE_LIBRARY
  74. BEGIN_JUCE_NAMESPACE
  75. #include "../src/native/mac/juce_mac_CarbonViewWrapperComponent.h"
  76. END_JUCE_NAMESPACE
  77. #endif
  78. //==============================================================================
  79. #if JUCE_BUILD_CORE
  80. #include "../src/core/juce_FileLogger.cpp"
  81. #include "../src/core/juce_Logger.cpp"
  82. #include "../src/maths/juce_Random.cpp"
  83. #include "../src/core/juce_RelativeTime.cpp"
  84. #include "../src/core/juce_SystemStats.cpp"
  85. #include "../src/core/juce_Time.cpp"
  86. #include "../src/core/juce_Initialisation.cpp"
  87. #include "../src/containers/juce_AbstractFifo.cpp"
  88. #include "../src/maths/juce_BigInteger.cpp"
  89. #include "../src/memory/juce_MemoryBlock.cpp"
  90. #include "../src/containers/juce_PropertySet.cpp"
  91. #include "../src/text/juce_Identifier.cpp"
  92. #include "../src/containers/juce_Variant.cpp"
  93. #include "../src/containers/juce_NamedValueSet.cpp"
  94. #include "../src/containers/juce_DynamicObject.cpp"
  95. #include "../src/maths/juce_Expression.cpp"
  96. #include "../src/cryptography/juce_BlowFish.cpp"
  97. #include "../src/cryptography/juce_MD5.cpp"
  98. #include "../src/cryptography/juce_Primes.cpp"
  99. #include "../src/cryptography/juce_RSAKey.cpp"
  100. #include "../src/io/streams/juce_InputStream.cpp"
  101. #include "../src/io/streams/juce_OutputStream.cpp"
  102. #include "../src/io/files/juce_DirectoryIterator.cpp"
  103. #include "../src/io/files/juce_File.cpp"
  104. #include "../src/io/files/juce_FileInputStream.cpp"
  105. #include "../src/io/files/juce_FileOutputStream.cpp"
  106. #include "../src/io/files/juce_FileSearchPath.cpp"
  107. #include "../src/io/files/juce_NamedPipe.cpp"
  108. #include "../src/io/files/juce_TemporaryFile.cpp"
  109. #include "../src/io/network/juce_Socket.cpp"
  110. #include "../src/io/network/juce_URL.cpp"
  111. #include "../src/io/network/juce_MACAddress.cpp"
  112. #include "../src/io/streams/juce_BufferedInputStream.cpp"
  113. #include "../src/io/streams/juce_FileInputSource.cpp"
  114. #include "../src/io/streams/juce_MemoryInputStream.cpp"
  115. #include "../src/io/streams/juce_MemoryOutputStream.cpp"
  116. #include "../src/io/streams/juce_SubregionStream.cpp"
  117. #include "../src/core/juce_PerformanceCounter.cpp"
  118. #include "../src/core/juce_Uuid.cpp"
  119. #include "../src/io/files/juce_ZipFile.cpp"
  120. #include "../src/text/juce_CharacterFunctions.cpp"
  121. #include "../src/text/juce_LocalisedStrings.cpp"
  122. #include "../src/text/juce_String.cpp"
  123. #include "../src/text/juce_StringArray.cpp"
  124. #include "../src/text/juce_StringPairArray.cpp"
  125. #include "../src/text/juce_StringPool.cpp"
  126. #include "../src/text/juce_XmlDocument.cpp"
  127. #include "../src/text/juce_XmlElement.cpp"
  128. #include "../src/threads/juce_ReadWriteLock.cpp"
  129. #include "../src/threads/juce_Thread.cpp"
  130. #include "../src/threads/juce_ThreadPool.cpp"
  131. #include "../src/threads/juce_TimeSliceThread.cpp"
  132. #endif
  133. #if JUCE_BUILD_MISC
  134. #include "../src/containers/juce_ValueTree.cpp"
  135. #include "../src/containers/juce_Value.cpp"
  136. #include "../src/application/juce_Application.cpp"
  137. #include "../src/application/juce_ApplicationCommandInfo.cpp"
  138. #include "../src/application/juce_ApplicationCommandManager.cpp"
  139. #include "../src/application/juce_ApplicationCommandTarget.cpp"
  140. #include "../src/application/juce_ApplicationProperties.cpp"
  141. #include "../src/utilities/juce_PropertiesFile.cpp"
  142. #include "../src/utilities/juce_FileBasedDocument.cpp"
  143. #include "../src/utilities/juce_RecentlyOpenedFilesList.cpp"
  144. #include "../src/utilities/juce_UndoManager.cpp"
  145. #include "../src/utilities/juce_UnitTest.cpp"
  146. #include "../src/utilities/juce_DeletedAtShutdown.cpp"
  147. #include "../src/audio/audio_file_formats/juce_AiffAudioFormat.cpp"
  148. #include "../src/audio/audio_file_formats/juce_AudioFormat.cpp"
  149. #include "../src/audio/audio_file_formats/juce_AudioFormatReader.cpp"
  150. #include "../src/audio/audio_file_formats/juce_AudioFormatWriter.cpp"
  151. #include "../src/audio/audio_file_formats/juce_AudioFormatManager.cpp"
  152. #include "../src/audio/audio_file_formats/juce_AudioSubsectionReader.cpp"
  153. #include "../src/audio/audio_file_formats/juce_AudioThumbnail.cpp"
  154. #include "../src/audio/audio_file_formats/juce_AudioThumbnailCache.cpp"
  155. #include "../src/audio/audio_file_formats/juce_QuickTimeAudioFormat.cpp"
  156. #include "../src/audio/audio_file_formats/juce_WavAudioFormat.cpp"
  157. #include "../src/audio/audio_file_formats/juce_AudioCDReader.cpp"
  158. #include "../src/audio/audio_sources/juce_AudioFormatReaderSource.cpp"
  159. #include "../src/audio/audio_sources/juce_AudioSourcePlayer.cpp"
  160. #include "../src/audio/audio_sources/juce_AudioTransportSource.cpp"
  161. #include "../src/audio/audio_sources/juce_BufferingAudioSource.cpp"
  162. #include "../src/audio/audio_sources/juce_ChannelRemappingAudioSource.cpp"
  163. #include "../src/audio/audio_sources/juce_IIRFilterAudioSource.cpp"
  164. #include "../src/audio/audio_sources/juce_MixerAudioSource.cpp"
  165. #include "../src/audio/audio_sources/juce_ResamplingAudioSource.cpp"
  166. #include "../src/audio/audio_sources/juce_ToneGeneratorAudioSource.cpp"
  167. #include "../src/audio/devices/juce_AudioDeviceManager.cpp"
  168. #include "../src/audio/devices/juce_AudioIODevice.cpp"
  169. #include "../src/audio/devices/juce_AudioIODeviceType.cpp"
  170. #include "../src/audio/devices/juce_MidiOutput.cpp"
  171. #include "../src/audio/dsp/juce_AudioDataConverters.cpp"
  172. #include "../src/audio/dsp/juce_AudioSampleBuffer.cpp"
  173. #include "../src/audio/dsp/juce_IIRFilter.cpp"
  174. #include "../src/audio/midi/juce_MidiBuffer.cpp"
  175. #include "../src/audio/midi/juce_MidiFile.cpp"
  176. #include "../src/audio/midi/juce_MidiKeyboardState.cpp"
  177. #include "../src/audio/midi/juce_MidiMessage.cpp"
  178. #include "../src/audio/midi/juce_MidiMessageCollector.cpp"
  179. #include "../src/audio/midi/juce_MidiMessageSequence.cpp"
  180. #include "../src/audio/plugins/juce_AudioPluginFormat.cpp"
  181. #include "../src/audio/plugins/juce_AudioPluginFormatManager.cpp"
  182. #include "../src/audio/plugins/juce_AudioPluginInstance.cpp"
  183. #include "../src/audio/plugins/juce_KnownPluginList.cpp"
  184. #include "../src/audio/plugins/juce_PluginDescription.cpp"
  185. #include "../src/audio/plugins/juce_PluginDirectoryScanner.cpp"
  186. #include "../src/audio/plugins/juce_PluginListComponent.cpp"
  187. #include "../src/audio/plugins/formats/juce_AudioUnitPluginFormat.mm"
  188. #include "../src/audio/plugins/formats/juce_VSTPluginFormat.mm"
  189. #include "../src/audio/processors/juce_AudioProcessor.cpp"
  190. #include "../src/audio/processors/juce_AudioProcessorEditor.cpp"
  191. #include "../src/audio/processors/juce_AudioProcessorGraph.cpp"
  192. #include "../src/audio/processors/juce_AudioProcessorPlayer.cpp"
  193. #include "../src/audio/processors/juce_GenericAudioProcessorEditor.cpp"
  194. #include "../src/audio/synthesisers/juce_Sampler.cpp"
  195. #include "../src/audio/synthesisers/juce_Synthesiser.cpp"
  196. #include "../src/events/juce_ActionBroadcaster.cpp"
  197. #include "../src/events/juce_AsyncUpdater.cpp"
  198. #include "../src/events/juce_ChangeBroadcaster.cpp"
  199. #include "../src/events/juce_InterprocessConnection.cpp"
  200. #include "../src/events/juce_InterprocessConnectionServer.cpp"
  201. #include "../src/events/juce_Message.cpp"
  202. #include "../src/events/juce_MessageListener.cpp"
  203. #include "../src/events/juce_MessageManager.cpp"
  204. #include "../src/events/juce_MultiTimer.cpp"
  205. #include "../src/events/juce_Timer.cpp"
  206. #endif
  207. #if JUCE_BUILD_GUI
  208. #include "../src/gui/components/juce_Component.cpp"
  209. #include "../src/gui/components/juce_ComponentListener.cpp"
  210. #include "../src/gui/components/juce_Desktop.cpp"
  211. #include "../src/gui/components/juce_ModalComponentManager.cpp"
  212. #include "../src/gui/components/buttons/juce_ArrowButton.cpp"
  213. #include "../src/gui/components/buttons/juce_Button.cpp"
  214. #include "../src/gui/components/buttons/juce_DrawableButton.cpp"
  215. #include "../src/gui/components/buttons/juce_HyperlinkButton.cpp"
  216. #include "../src/gui/components/buttons/juce_ImageButton.cpp"
  217. #include "../src/gui/components/buttons/juce_ShapeButton.cpp"
  218. #include "../src/gui/components/buttons/juce_TextButton.cpp"
  219. #include "../src/gui/components/buttons/juce_ToggleButton.cpp"
  220. #include "../src/gui/components/buttons/juce_ToolbarButton.cpp"
  221. #include "../src/gui/components/code_editor/juce_CodeDocument.cpp"
  222. #include "../src/gui/components/code_editor/juce_CodeEditorComponent.cpp"
  223. #include "../src/gui/components/code_editor/juce_CPlusPlusCodeTokeniser.cpp"
  224. #include "../src/gui/components/controls/juce_ComboBox.cpp"
  225. #include "../src/gui/components/controls/juce_Label.cpp"
  226. #include "../src/gui/components/controls/juce_ListBox.cpp"
  227. #include "../src/gui/components/controls/juce_ProgressBar.cpp"
  228. #include "../src/gui/components/controls/juce_Slider.cpp"
  229. #include "../src/gui/components/controls/juce_TableHeaderComponent.cpp"
  230. #include "../src/gui/components/controls/juce_TableListBox.cpp"
  231. #include "../src/gui/components/controls/juce_TextEditor.cpp"
  232. #include "../src/gui/components/controls/juce_Toolbar.cpp"
  233. #include "../src/gui/components/controls/juce_ToolbarItemComponent.cpp"
  234. #include "../src/gui/components/controls/juce_ToolbarItemPalette.cpp"
  235. #include "../src/gui/components/controls/juce_TreeView.cpp"
  236. #include "../src/gui/components/filebrowser/juce_DirectoryContentsDisplayComponent.cpp"
  237. #include "../src/gui/components/filebrowser/juce_DirectoryContentsList.cpp"
  238. #include "../src/gui/components/filebrowser/juce_FileBrowserComponent.cpp"
  239. #include "../src/gui/components/filebrowser/juce_FileChooser.cpp"
  240. #include "../src/gui/components/filebrowser/juce_FileChooserDialogBox.cpp"
  241. #include "../src/gui/components/filebrowser/juce_FileFilter.cpp"
  242. #include "../src/gui/components/filebrowser/juce_FileListComponent.cpp"
  243. #include "../src/gui/components/filebrowser/juce_FilenameComponent.cpp"
  244. #include "../src/gui/components/filebrowser/juce_FileSearchPathListComponent.cpp"
  245. #include "../src/gui/components/filebrowser/juce_FileTreeComponent.cpp"
  246. #include "../src/gui/components/filebrowser/juce_ImagePreviewComponent.cpp"
  247. #include "../src/gui/components/filebrowser/juce_WildcardFileFilter.cpp"
  248. #include "../src/gui/components/keyboard/juce_KeyboardFocusTraverser.cpp"
  249. #include "../src/gui/components/keyboard/juce_KeyListener.cpp"
  250. #include "../src/gui/components/keyboard/juce_KeyMappingEditorComponent.cpp"
  251. #include "../src/gui/components/keyboard/juce_KeyPress.cpp"
  252. #include "../src/gui/components/keyboard/juce_KeyPressMappingSet.cpp"
  253. #include "../src/gui/components/keyboard/juce_ModifierKeys.cpp"
  254. #include "../src/gui/components/layout/juce_ComponentAnimator.cpp"
  255. #include "../src/gui/components/layout/juce_ComponentBuilder.cpp"
  256. #include "../src/gui/components/layout/juce_ComponentBoundsConstrainer.cpp"
  257. #include "../src/gui/components/layout/juce_ComponentMovementWatcher.cpp"
  258. #include "../src/gui/components/layout/juce_GroupComponent.cpp"
  259. #include "../src/gui/components/layout/juce_MultiDocumentPanel.cpp"
  260. #include "../src/gui/components/layout/juce_ResizableBorderComponent.cpp"
  261. #include "../src/gui/components/layout/juce_ResizableCornerComponent.cpp"
  262. #include "../src/gui/components/layout/juce_ScrollBar.cpp"
  263. #include "../src/gui/components/layout/juce_StretchableLayoutManager.cpp"
  264. #include "../src/gui/components/layout/juce_StretchableLayoutResizerBar.cpp"
  265. #include "../src/gui/components/layout/juce_StretchableObjectResizer.cpp"
  266. #include "../src/gui/components/layout/juce_TabbedButtonBar.cpp"
  267. #include "../src/gui/components/layout/juce_TabbedComponent.cpp"
  268. #include "../src/gui/components/layout/juce_Viewport.cpp"
  269. #include "../src/gui/components/lookandfeel/juce_LookAndFeel.cpp"
  270. #include "../src/gui/components/lookandfeel/juce_OldSchoolLookAndFeel.cpp"
  271. #include "../src/gui/components/menus/juce_MenuBarComponent.cpp"
  272. #include "../src/gui/components/menus/juce_MenuBarModel.cpp"
  273. #include "../src/gui/components/menus/juce_PopupMenu.cpp"
  274. #include "../src/gui/components/mouse/juce_ComponentDragger.cpp"
  275. #include "../src/gui/components/mouse/juce_DragAndDropContainer.cpp"
  276. #include "../src/gui/components/mouse/juce_MouseCursor.cpp"
  277. #include "../src/gui/components/mouse/juce_MouseEvent.cpp"
  278. #include "../src/gui/components/mouse/juce_MouseInputSource.cpp"
  279. #include "../src/gui/components/mouse/juce_MouseListener.cpp"
  280. #include "../src/gui/components/properties/juce_BooleanPropertyComponent.cpp"
  281. #include "../src/gui/components/properties/juce_ButtonPropertyComponent.cpp"
  282. #include "../src/gui/components/properties/juce_ChoicePropertyComponent.cpp"
  283. #include "../src/gui/components/properties/juce_PropertyComponent.cpp"
  284. #include "../src/gui/components/properties/juce_PropertyPanel.cpp"
  285. #include "../src/gui/components/properties/juce_SliderPropertyComponent.cpp"
  286. #include "../src/gui/components/properties/juce_TextPropertyComponent.cpp"
  287. #include "../src/gui/components/special/juce_AudioDeviceSelectorComponent.cpp"
  288. #include "../src/gui/components/special/juce_BubbleComponent.cpp"
  289. #include "../src/gui/components/special/juce_BubbleMessageComponent.cpp"
  290. #include "../src/gui/components/special/juce_ColourSelector.cpp"
  291. #include "../src/gui/components/special/juce_DropShadower.cpp"
  292. #include "../src/gui/components/special/juce_MidiKeyboardComponent.cpp"
  293. #include "../src/gui/components/special/juce_OpenGLComponent.cpp"
  294. #include "../src/gui/components/special/juce_PreferencesPanel.cpp"
  295. #include "../src/gui/components/special/juce_SystemTrayIconComponent.cpp"
  296. #include "../src/gui/components/windows/juce_AlertWindow.cpp"
  297. #include "../src/gui/components/windows/juce_CallOutBox.cpp"
  298. #include "../src/gui/components/windows/juce_ComponentPeer.cpp"
  299. #include "../src/gui/components/windows/juce_DialogWindow.cpp"
  300. #include "../src/gui/components/windows/juce_DocumentWindow.cpp"
  301. #include "../src/gui/components/windows/juce_ResizableWindow.cpp"
  302. #include "../src/gui/components/windows/juce_SplashScreen.cpp"
  303. #include "../src/gui/components/windows/juce_ThreadWithProgressWindow.cpp"
  304. #include "../src/gui/components/windows/juce_TooltipWindow.cpp"
  305. #include "../src/gui/components/windows/juce_TopLevelWindow.cpp"
  306. #include "../src/gui/components/positioning/juce_MarkerList.cpp"
  307. #include "../src/gui/components/positioning/juce_RelativeCoordinate.cpp"
  308. #include "../src/gui/components/positioning/juce_RelativePoint.cpp"
  309. #include "../src/gui/components/positioning/juce_RelativeRectangle.cpp"
  310. #include "../src/gui/components/positioning/juce_RelativePointPath.cpp"
  311. #include "../src/gui/components/positioning/juce_RelativeParallelogram.cpp"
  312. #include "../src/gui/components/positioning/juce_RelativeCoordinatePositioner.cpp"
  313. #endif
  314. #if JUCE_BUILD_MISC // (put these in misc to balance the file sizes and avoid problems in iphone build)
  315. #include "../src/gui/graphics/colour/juce_Colour.cpp"
  316. #include "../src/gui/graphics/colour/juce_ColourGradient.cpp"
  317. #include "../src/gui/graphics/colour/juce_Colours.cpp"
  318. #include "../src/gui/graphics/contexts/juce_EdgeTable.cpp"
  319. #include "../src/gui/graphics/contexts/juce_FillType.cpp"
  320. #include "../src/gui/graphics/contexts/juce_Graphics.cpp"
  321. #include "../src/gui/graphics/contexts/juce_Justification.cpp"
  322. #include "../src/gui/graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.cpp"
  323. #include "../src/gui/graphics/contexts/juce_LowLevelGraphicsSoftwareRenderer.cpp"
  324. #include "../src/gui/graphics/contexts/juce_RectanglePlacement.cpp"
  325. #include "../src/gui/graphics/drawables/juce_Drawable.cpp"
  326. #include "../src/gui/graphics/drawables/juce_DrawableShape.cpp"
  327. #include "../src/gui/graphics/drawables/juce_DrawableComposite.cpp"
  328. #include "../src/gui/graphics/drawables/juce_DrawableImage.cpp"
  329. #include "../src/gui/graphics/drawables/juce_DrawablePath.cpp"
  330. #include "../src/gui/graphics/drawables/juce_DrawableRectangle.cpp"
  331. #include "../src/gui/graphics/drawables/juce_DrawableText.cpp"
  332. #include "../src/gui/graphics/drawables/juce_SVGParser.cpp"
  333. #include "../src/gui/graphics/effects/juce_DropShadowEffect.cpp"
  334. #include "../src/gui/graphics/effects/juce_GlowEffect.cpp"
  335. #include "../src/gui/graphics/fonts/juce_Font.cpp"
  336. #include "../src/gui/graphics/fonts/juce_GlyphArrangement.cpp"
  337. #include "../src/gui/graphics/fonts/juce_TextLayout.cpp"
  338. #include "../src/gui/graphics/fonts/juce_Typeface.cpp"
  339. #include "../src/gui/graphics/geometry/juce_AffineTransform.cpp"
  340. #include "../src/gui/graphics/geometry/juce_Path.cpp"
  341. #include "../src/gui/graphics/geometry/juce_PathIterator.cpp"
  342. #include "../src/gui/graphics/geometry/juce_PathStrokeType.cpp"
  343. #include "../src/gui/graphics/geometry/juce_RectangleList.cpp"
  344. #include "../src/gui/graphics/imaging/juce_Image.cpp"
  345. #include "../src/gui/graphics/imaging/juce_ImageCache.cpp"
  346. #include "../src/gui/graphics/imaging/juce_ImageConvolutionKernel.cpp"
  347. #include "../src/gui/graphics/imaging/juce_ImageFileFormat.cpp"
  348. #include "../src/gui/graphics/imaging/image_file_formats/juce_GIFLoader.cpp"
  349. #endif
  350. //==============================================================================
  351. // some files include lots of library code, so leave them to the end to avoid cluttering
  352. // up the build for the clean files.
  353. #if JUCE_BUILD_CORE
  354. #include "../src/io/streams/juce_GZIPCompressorOutputStream.cpp"
  355. #include "../src/io/streams/juce_GZIPDecompressorInputStream.cpp"
  356. #endif
  357. #if JUCE_BUILD_NATIVE && ! JUCE_ONLY_BUILD_CORE_LIBRARY
  358. #include "../src/audio/audio_file_formats/juce_FlacAudioFormat.cpp"
  359. #include "../src/audio/audio_file_formats/juce_OggVorbisAudioFormat.cpp"
  360. #endif
  361. #if JUCE_BUILD_CORE && ! JUCE_ONLY_BUILD_CORE_LIBRARY // do these in the core section to help balance the sizes
  362. #include "../src/gui/graphics/imaging/image_file_formats/juce_JPEGLoader.cpp"
  363. #include "../src/gui/graphics/imaging/image_file_formats/juce_PNGLoader.cpp"
  364. #endif
  365. //==============================================================================
  366. #if JUCE_BUILD_NATIVE
  367. // Non-public headers that are needed by more than one platform must be included
  368. // before the platform-specific sections..
  369. BEGIN_JUCE_NAMESPACE
  370. #include "../src/native/common/juce_MidiDataConcatenator.h"
  371. END_JUCE_NAMESPACE
  372. #if JUCE_WINDOWS
  373. #include "../src/native/windows/juce_win32_NativeCode.cpp"
  374. #elif JUCE_LINUX
  375. #include "../src/native/linux/juce_linux_NativeCode.cpp"
  376. #elif JUCE_MAC || JUCE_IOS
  377. #include "../src/native/mac/juce_mac_NativeCode.mm"
  378. #elif JUCE_ANDROID
  379. #include "../src/native/android/juce_android_NativeCode.cpp"
  380. #endif
  381. #endif