diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 00000000..cd0ee3d0
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,55 @@
+name: CI
+
+on: [push, pull_request]
+
+jobs:
+ build:
+ name: ${{ matrix.platform.name }} ${{ matrix.config.name }}
+ runs-on: ${{ matrix.platform.os }}
+
+ strategy:
+ matrix:
+ platform:
+ - { name: Windows VS2017, os: windows-2016 }
+ - { name: Windows VS2019, os: windows-latest }
+ - { name: Linux GCC, os: ubuntu-latest }
+ - { name: Linux Clang, os: ubuntu-latest, flags: -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ }
+ - { name: MacOS XCode, os: macos-latest }
+ config:
+ - { name: Shared, flags: -DBUILD_SHARED_LIBS=TRUE }
+ - { name: Static, flags: -DBUILD_SHARED_LIBS=FALSE }
+
+ include:
+ - platform: { name: MacOS XCode, os: macos-latest }
+ config: { name: Frameworks, flags: -DSFML_BUILD_FRAMEWORKS=TRUE }
+ - platform: { name: MacOS XCode, os: macos-latest }
+ config: { name: iOS, flags: -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/cmake/toolchains/iOS.toolchain.cmake -DIOS_PLATFORM=SIMULATOR }
+ - platform: { name: Android, os: ubuntu-latest }
+ config: { name: x86, flags: -DCMAKE_ANDROID_ARCH_ABI=x86 -DCMAKE_SYSTEM_NAME=Android -DSFML_BUILD_TEST_SUITE=FALSE -DCMAKE_ANDROID_NDK=$GITHUB_WORKSPACE/android-ndk-r18b -DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang -DCMAKE_ANDROID_STL_TYPE=c++_shared -DCMAKE_ANDROID_API=26 }
+ - platform: { name: Android, os: ubuntu-latest }
+ config: { name: armeabi-v7a, flags: -DCMAKE_ANDROID_ARCH_ABI=armeabi-v7a -DCMAKE_SYSTEM_NAME=Android -DSFML_BUILD_TEST_SUITE=FALSE -DCMAKE_ANDROID_NDK=$GITHUB_WORKSPACE/android-ndk-r18b -DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang -DCMAKE_ANDROID_STL_TYPE=c++_shared -DCMAKE_ANDROID_API=26 }
+ steps:
+ - name: Checkout Code
+ uses: actions/checkout@v2
+
+ - name: Install Linux Dependencies
+ if: runner.os == 'Linux'
+ run: sudo apt-get install libxrandr-dev libxcursor-dev libudev-dev libopenal-dev libflac-dev libvorbis-dev libgl1-mesa-dev libegl1-mesa-dev
+
+
+ - name: Install Android Components
+ if: matrix.platform.name == 'Android'
+ run: |
+ echo "y" | /usr/local/lib/android/sdk/tools/bin/sdkmanager --install "cmake;3.10.2.4988404" --sdk_root=ANDROID_SDK_ROOT
+ sudo ln -sf /usr/local/lib/android/sdk/cmake/3.10.2.4988404/bin/cmake /usr/bin/cmake
+ wget -nv https://dl.google.com/android/repository/android-ndk-r18b-linux-x86_64.zip -P $GITHUB_WORKSPACE
+ unzip -qq -d $GITHUB_WORKSPACE android-ndk-r18b-linux-x86_64.zip
+
+
+ - name: Configure CMake
+ shell: bash
+ run: cmake -S $GITHUB_WORKSPACE -B $GITHUB_WORKSPACE/build -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/install -DSFML_BUILD_EXAMPLES=TRUE -DCMAKE_VERBOSE_MAKEFILE=ON -DSFML_BUILD_TEST_SUITE=TRUE ${{matrix.platform.flags}} ${{matrix.config.flags}}
+
+ - name: Build
+ shell: bash
+ run: cmake --build $GITHUB_WORKSPACE/build --config Release --target install
diff --git a/.travis.yml b/.travis.yml
index ebefd2c0..953ae090 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -4,6 +4,7 @@ addons:
apt_packages:
- cmake
- libxrandr-dev
+ - libxcursor-dev
- libudev-dev
- libopenal-dev
- libflac-dev
@@ -14,7 +15,7 @@ addons:
before_script:
- mkdir build && cd build
-- cmake .. $CMAKE_FLAGS -DCMAKE_INSTALL_PREFIX=../install -DSFML_BUILD_EXAMPLES=TRUE
+- cmake .. $CMAKE_FLAGS -DCMAKE_INSTALL_PREFIX=../install -DSFML_BUILD_EXAMPLES=TRUE -DCMAKE_VERBOSE_MAKEFILE=ON
script:
- cmake --build . --target install
@@ -74,16 +75,38 @@ matrix:
env:
- CMAKE_FLAGS="-GXcode -DSFML_BUILD_TEST_SUITE=TRUE -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/iOS.toolchain.cmake -DIOS_PLATFORM=SIMULATOR"
- - name: "Visual studio 15 2017 Dynamic"
+ - name: "Visual Studio 15 2017 Dynamic"
os: windows
env:
- CMAKE_FLAGS="-DSFML_BUILD_TEST_SUITE=FALSE"
- - name: "Visual studio 15 2017 Static"
+ - name: "Visual Studio 15 2017 Static"
os: windows
env:
- CMAKE_FLAGS="-DBUILD_SHARED_LIBS=FALSE -DSFML_BUILD_TEST_SUITE=TRUE"
+ - name: "Visual Studio 16 2019 Dynamic"
+ os: windows
+ env:
+ - CMAKE_FLAGS="-DSFML_BUILD_TEST_SUITE=FALSE"
+ - MSBUILD_PATH="C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin"
+ - VS160COMNTOOLS="C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools"
+ - PATH=$MSBUILD_PATH:$PATH
+ install:
+ - choco install visualstudio2019buildtools --package-parameters "--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64"
+ - choco install visualstudio2019-workload-nativedesktop
+
+ - name: "Visual Studio 16 2019 Static"
+ os: windows
+ env:
+ - CMAKE_FLAGS="-DBUILD_SHARED_LIBS=FALSE -DSFML_BUILD_TEST_SUITE=TRUE"
+ - MSBUILD_PATH="C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin"
+ - VS160COMNTOOLS="C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools"
+ - PATH=$MSBUILD_PATH:$PATH
+ install:
+ - choco install visualstudio2019buildtools --package-parameters "--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64"
+ - choco install visualstudio2019-workload-nativedesktop
+
- name: "Android armeabi-v7a"
language: android
android: &androidComponents
@@ -96,7 +119,6 @@ matrix:
install: &androidInstall
- echo y | sdkmanager "cmake;3.10.2.4988404"
- - echo y | sdkmanager "lldb;3.1"
- sudo ln -sf /usr/local/android-sdk/cmake/3.10.2.4988404/bin/cmake /usr/bin/cmake
- wget https://dl.google.com/android/repository/android-ndk-r18b-linux-x86_64.zip
- unzip -qq android-ndk-r18b-linux-x86_64.zip
diff --git a/cmake/Modules/FindVorbis.cmake b/cmake/Modules/FindVORBIS.cmake
similarity index 100%
rename from cmake/Modules/FindVorbis.cmake
rename to cmake/Modules/FindVORBIS.cmake
diff --git a/cmake/SFMLConfigDependencies.cmake.in b/cmake/SFMLConfigDependencies.cmake.in
index 1028110f..c5813bd6 100644
--- a/cmake/SFMLConfigDependencies.cmake.in
+++ b/cmake/SFMLConfigDependencies.cmake.in
@@ -47,6 +47,7 @@ if(SFML_STATIC_LIBRARIES)
if(FIND_SFML_OS_LINUX OR FIND_SFML_OS_FREEBSD)
sfml_bind_dependency(TARGET X11 FRIENDLY_NAME "X11" SEARCH_NAMES "X11")
sfml_bind_dependency(TARGET X11 FRIENDLY_NAME "Xrandr" SEARCH_NAMES "Xrandr")
+ sfml_bind_dependency(TARGET X11 FRIENDLY_NAME "Xcursor" SEARCH_NAMES "Xcursor")
endif()
if(FIND_SFML_OS_LINUX)
@@ -71,11 +72,11 @@ if(SFML_STATIC_LIBRARIES)
if(FIND_SFML_AUDIO_COMPONENT_INDEX GREATER -1)
sfml_bind_dependency(TARGET OpenAL FRIENDLY_NAME "OpenAL" SEARCH_NAMES "OpenAL" "openal" "openal32")
if (NOT FIND_SFML_OS_IOS)
- sfml_bind_dependency(TARGET Vorbis FRIENDLY_NAME "VorbisFile" SEARCH_NAMES "vorbisfile")
- sfml_bind_dependency(TARGET Vorbis FRIENDLY_NAME "VorbisEnc" SEARCH_NAMES "vorbisenc")
+ sfml_bind_dependency(TARGET VORBIS FRIENDLY_NAME "VorbisFile" SEARCH_NAMES "vorbisfile")
+ sfml_bind_dependency(TARGET VORBIS FRIENDLY_NAME "VorbisEnc" SEARCH_NAMES "vorbisenc")
endif()
- sfml_bind_dependency(TARGET Vorbis FRIENDLY_NAME "Vorbis" SEARCH_NAMES "vorbis")
- sfml_bind_dependency(TARGET Vorbis FRIENDLY_NAME "Ogg" SEARCH_NAMES "ogg")
+ sfml_bind_dependency(TARGET VORBIS FRIENDLY_NAME "Vorbis" SEARCH_NAMES "vorbis")
+ sfml_bind_dependency(TARGET VORBIS FRIENDLY_NAME "Ogg" SEARCH_NAMES "ogg")
sfml_bind_dependency(TARGET FLAC FRIENDLY_NAME "FLAC" SEARCH_NAMES "FLAC")
endif()
diff --git a/doc/mainpage.hpp b/doc/mainpage.hpp
index 16f2c43a..8f85f0cd 100644
--- a/doc/mainpage.hpp
+++ b/doc/mainpage.hpp
@@ -3,7 +3,7 @@
///
/// \section welcome Welcome
/// Welcome to the official SFML documentation. Here you will find a detailed
-/// view of all the SFML classes and functions.
+/// view of all the SFML classes and functions.
/// If you are looking for tutorials, you can visit the official website
/// at www.sfml-dev.org.
///
diff --git a/examples/cocoa/CocoaAppDelegate.h b/examples/cocoa/CocoaAppDelegate.h
index 1a21572f..389e94b7 100644
--- a/examples/cocoa/CocoaAppDelegate.h
+++ b/examples/cocoa/CocoaAppDelegate.h
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Marco Antognini (antognini.marco@gmail.com),
+// Copyright (C) 2007-2020 Marco Antognini (antognini.marco@gmail.com),
// Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
diff --git a/examples/cocoa/CocoaAppDelegate.mm b/examples/cocoa/CocoaAppDelegate.mm
index d264000c..bfb0dff1 100644
--- a/examples/cocoa/CocoaAppDelegate.mm
+++ b/examples/cocoa/CocoaAppDelegate.mm
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Marco Antognini (antognini.marco@gmail.com),
+// Copyright (C) 2007-2020 Marco Antognini (antognini.marco@gmail.com),
// Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
diff --git a/examples/cocoa/NSString+stdstring.h b/examples/cocoa/NSString+stdstring.h
index fa3df095..4d1d2f5a 100644
--- a/examples/cocoa/NSString+stdstring.h
+++ b/examples/cocoa/NSString+stdstring.h
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Marco Antognini (antognini.marco@gmail.com),
+// Copyright (C) 2007-2020 Marco Antognini (antognini.marco@gmail.com),
// Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
diff --git a/examples/cocoa/NSString+stdstring.mm b/examples/cocoa/NSString+stdstring.mm
index 4958ae7d..59d147d0 100644
--- a/examples/cocoa/NSString+stdstring.mm
+++ b/examples/cocoa/NSString+stdstring.mm
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Marco Antognini (antognini.marco@gmail.com),
+// Copyright (C) 2007-2020 Marco Antognini (antognini.marco@gmail.com),
// Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
diff --git a/examples/cocoa/main.m b/examples/cocoa/main.m
index 209a86bf..03da8ce5 100644
--- a/examples/cocoa/main.m
+++ b/examples/cocoa/main.m
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Marco Antognini (antognini.marco@gmail.com),
+// Copyright (C) 2007-2020 Marco Antognini (antognini.marco@gmail.com),
// Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
diff --git a/examples/cocoa/resources/Cocoa-Info.plist b/examples/cocoa/resources/Cocoa-Info.plist
index 7a7da9b9..1a937c30 100644
--- a/examples/cocoa/resources/Cocoa-Info.plist
+++ b/examples/cocoa/resources/Cocoa-Info.plist
@@ -25,7 +25,7 @@
LSMinimumSystemVersion
10.6
NSHumanReadableCopyright
- Copyright © 2007-2019 Marco Antognini and Laurent Gomila. Shared under zlib/libpng License.
+ Copyright © 2007-2020 Marco Antognini and Laurent Gomila. Shared under zlib/libpng License.
NSMainNibFile
MainMenu
NSPrincipalClass
diff --git a/include/SFML/Audio.hpp b/include/SFML/Audio.hpp
index f0b5b30a..68fe1a69 100644
--- a/include/SFML/Audio.hpp
+++ b/include/SFML/Audio.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Audio/AlResource.hpp b/include/SFML/Audio/AlResource.hpp
index 9f0f4dcd..f670c139 100644
--- a/include/SFML/Audio/AlResource.hpp
+++ b/include/SFML/Audio/AlResource.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Audio/Export.hpp b/include/SFML/Audio/Export.hpp
index bba990d9..c21ffb6e 100644
--- a/include/SFML/Audio/Export.hpp
+++ b/include/SFML/Audio/Export.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Audio/InputSoundFile.hpp b/include/SFML/Audio/InputSoundFile.hpp
index 30354bde..4c9eb951 100644
--- a/include/SFML/Audio/InputSoundFile.hpp
+++ b/include/SFML/Audio/InputSoundFile.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -206,13 +206,13 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- SoundFileReader* m_reader; ///< Reader that handles I/O on the file's format
- InputStream* m_stream; ///< Input stream used to access the file's data
- bool m_streamOwned; ///< Is the stream internal or external?
- Uint64 m_sampleOffset; ///< Sample Read Position
- Uint64 m_sampleCount; ///< Total number of samples in the file
- unsigned int m_channelCount; ///< Number of channels of the sound
- unsigned int m_sampleRate; ///< Number of samples per second
+ SoundFileReader* m_reader; //!< Reader that handles I/O on the file's format
+ InputStream* m_stream; //!< Input stream used to access the file's data
+ bool m_streamOwned; //!< Is the stream internal or external?
+ Uint64 m_sampleOffset; //!< Sample Read Position
+ Uint64 m_sampleCount; //!< Total number of samples in the file
+ unsigned int m_channelCount; //!< Number of channels of the sound
+ unsigned int m_sampleRate; //!< Number of samples per second
};
} // namespace sf
diff --git a/include/SFML/Audio/Listener.hpp b/include/SFML/Audio/Listener.hpp
index f14beda2..569eb912 100644
--- a/include/SFML/Audio/Listener.hpp
+++ b/include/SFML/Audio/Listener.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Audio/Music.hpp b/include/SFML/Audio/Music.hpp
index 44428acd..bbe84c89 100644
--- a/include/SFML/Audio/Music.hpp
+++ b/include/SFML/Audio/Music.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -79,8 +79,8 @@ public:
}
- T offset; ///< The beginning offset of the time range
- T length; ///< The length of the time range
+ T offset; //!< The beginning offset of the time range
+ T length; //!< The length of the time range
};
// Define the relevant Span types
@@ -276,10 +276,10 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- InputSoundFile m_file; ///< The streamed music file
- std::vector m_samples; ///< Temporary buffer of samples
- Mutex m_mutex; ///< Mutex protecting the data
- Span m_loopSpan; ///< Loop Range Specifier
+ InputSoundFile m_file; //!< The streamed music file
+ std::vector m_samples; //!< Temporary buffer of samples
+ Mutex m_mutex; //!< Mutex protecting the data
+ Span m_loopSpan; //!< Loop Range Specifier
};
} // namespace sf
diff --git a/include/SFML/Audio/OutputSoundFile.hpp b/include/SFML/Audio/OutputSoundFile.hpp
index 25c9ccd1..6247ef0e 100644
--- a/include/SFML/Audio/OutputSoundFile.hpp
+++ b/include/SFML/Audio/OutputSoundFile.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -93,7 +93,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- SoundFileWriter* m_writer; ///< Writer that handles I/O on the file's format
+ SoundFileWriter* m_writer; //!< Writer that handles I/O on the file's format
};
} // namespace sf
diff --git a/include/SFML/Audio/Sound.hpp b/include/SFML/Audio/Sound.hpp
index 5a001045..909f4c16 100644
--- a/include/SFML/Audio/Sound.hpp
+++ b/include/SFML/Audio/Sound.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -217,7 +217,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- const SoundBuffer* m_buffer; ///< Sound buffer bound to the source
+ const SoundBuffer* m_buffer; //!< Sound buffer bound to the source
};
} // namespace sf
diff --git a/include/SFML/Audio/SoundBuffer.hpp b/include/SFML/Audio/SoundBuffer.hpp
index ca506ef4..8b8391a5 100644
--- a/include/SFML/Audio/SoundBuffer.hpp
+++ b/include/SFML/Audio/SoundBuffer.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -267,15 +267,15 @@ private:
////////////////////////////////////////////////////////////
// Types
////////////////////////////////////////////////////////////
- typedef std::set SoundList; ///< Set of unique sound instances
+ typedef std::set SoundList; //!< Set of unique sound instances
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- unsigned int m_buffer; ///< OpenAL buffer identifier
- std::vector m_samples; ///< Samples buffer
- Time m_duration; ///< Sound duration
- mutable SoundList m_sounds; ///< List of sounds that are using this buffer
+ unsigned int m_buffer; //!< OpenAL buffer identifier
+ std::vector m_samples; //!< Samples buffer
+ Time m_duration; //!< Sound duration
+ mutable SoundList m_sounds; //!< List of sounds that are using this buffer
};
} // namespace sf
diff --git a/include/SFML/Audio/SoundBufferRecorder.hpp b/include/SFML/Audio/SoundBufferRecorder.hpp
index f7d147e4..9e100d15 100644
--- a/include/SFML/Audio/SoundBufferRecorder.hpp
+++ b/include/SFML/Audio/SoundBufferRecorder.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -96,8 +96,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::vector m_samples; ///< Temporary sample buffer to hold the recorded data
- SoundBuffer m_buffer; ///< Sound buffer that will contain the recorded data
+ std::vector m_samples; //!< Temporary sample buffer to hold the recorded data
+ SoundBuffer m_buffer; //!< Sound buffer that will contain the recorded data
};
} // namespace sf
diff --git a/include/SFML/Audio/SoundFileFactory.hpp b/include/SFML/Audio/SoundFileFactory.hpp
index a00d6dcd..cae1f692 100644
--- a/include/SFML/Audio/SoundFileFactory.hpp
+++ b/include/SFML/Audio/SoundFileFactory.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -160,8 +160,8 @@ private:
////////////////////////////////////////////////////////////
// Static member data
////////////////////////////////////////////////////////////
- static ReaderFactoryArray s_readers; ///< List of all registered readers
- static WriterFactoryArray s_writers; ///< List of all registered writers
+ static ReaderFactoryArray s_readers; //!< List of all registered readers
+ static WriterFactoryArray s_writers; //!< List of all registered writers
};
} // namespace sf
diff --git a/include/SFML/Audio/SoundFileFactory.inl b/include/SFML/Audio/SoundFileFactory.inl
index e9794153..bbfa91f1 100644
--- a/include/SFML/Audio/SoundFileFactory.inl
+++ b/include/SFML/Audio/SoundFileFactory.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Audio/SoundFileReader.hpp b/include/SFML/Audio/SoundFileReader.hpp
index e6ef7a41..61dd998f 100644
--- a/include/SFML/Audio/SoundFileReader.hpp
+++ b/include/SFML/Audio/SoundFileReader.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -50,9 +50,9 @@ public:
////////////////////////////////////////////////////////////
struct Info
{
- Uint64 sampleCount; ///< Total number of samples in the file
- unsigned int channelCount; ///< Number of channels of the sound
- unsigned int sampleRate; ///< Samples rate of the sound, in samples per second
+ Uint64 sampleCount; //!< Total number of samples in the file
+ unsigned int channelCount; //!< Number of channels of the sound
+ unsigned int sampleRate; //!< Samples rate of the sound, in samples per second
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Audio/SoundFileWriter.hpp b/include/SFML/Audio/SoundFileWriter.hpp
index 5e7ae016..ff90bab2 100644
--- a/include/SFML/Audio/SoundFileWriter.hpp
+++ b/include/SFML/Audio/SoundFileWriter.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Audio/SoundRecorder.hpp b/include/SFML/Audio/SoundRecorder.hpp
index 4a6fec25..53cf73ad 100644
--- a/include/SFML/Audio/SoundRecorder.hpp
+++ b/include/SFML/Audio/SoundRecorder.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -285,13 +285,13 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Thread m_thread; ///< Thread running the background recording task
- std::vector m_samples; ///< Buffer to store captured samples
- unsigned int m_sampleRate; ///< Sample rate
- Time m_processingInterval; ///< Time period between calls to onProcessSamples
- bool m_isCapturing; ///< Capturing state
- std::string m_deviceName; ///< Name of the audio capture device
- unsigned int m_channelCount; ///< Number of recording channels
+ Thread m_thread; //!< Thread running the background recording task
+ std::vector m_samples; //!< Buffer to store captured samples
+ unsigned int m_sampleRate; //!< Sample rate
+ Time m_processingInterval; //!< Time period between calls to onProcessSamples
+ bool m_isCapturing; //!< Capturing state
+ std::string m_deviceName; //!< Name of the audio capture device
+ unsigned int m_channelCount; //!< Number of recording channels
};
} // namespace sf
diff --git a/include/SFML/Audio/SoundSource.hpp b/include/SFML/Audio/SoundSource.hpp
index ac9d17a1..ce795d67 100644
--- a/include/SFML/Audio/SoundSource.hpp
+++ b/include/SFML/Audio/SoundSource.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -49,9 +49,9 @@ public:
////////////////////////////////////////////////////////////
enum Status
{
- Stopped, ///< Sound is not playing
- Paused, ///< Sound is paused
- Playing ///< Sound is playing
+ Stopped, //!< Sound is not playing
+ Paused, //!< Sound is paused
+ Playing //!< Sound is playing
};
////////////////////////////////////////////////////////////
@@ -306,7 +306,7 @@ protected:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- unsigned int m_source; ///< OpenAL source identifier
+ unsigned int m_source; //!< OpenAL source identifier
};
} // namespace sf
diff --git a/include/SFML/Audio/SoundStream.hpp b/include/SFML/Audio/SoundStream.hpp
index 1659d7d2..31c6b9f3 100644
--- a/include/SFML/Audio/SoundStream.hpp
+++ b/include/SFML/Audio/SoundStream.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -52,8 +52,8 @@ public:
////////////////////////////////////////////////////////////
struct Chunk
{
- const Int16* samples; ///< Pointer to the audio samples
- std::size_t sampleCount; ///< Number of samples pointed by Samples
+ const Int16* samples; //!< Pointer to the audio samples
+ std::size_t sampleCount; //!< Number of samples pointed by Samples
};
////////////////////////////////////////////////////////////
@@ -182,7 +182,7 @@ protected:
enum
{
- NoLoop = -1 ///< "Invalid" endSeeks value, telling us to continue uninterrupted
+ NoLoop = -1 //!< "Invalid" endSeeks value, telling us to continue uninterrupted
};
////////////////////////////////////////////////////////////
@@ -251,6 +251,20 @@ protected:
////////////////////////////////////////////////////////////
virtual Int64 onLoop();
+ ////////////////////////////////////////////////////////////
+ /// \brief Set the processing interval
+ ///
+ /// The processing interval controls the period at which the
+ /// audio buffers are filled by calls to onGetData. A smaller
+ /// interval may be useful for low-latency streams. Note that
+ /// the given period is only a hint and the actual period may
+ /// vary. The default processing interval is 10 ms.
+ ///
+ /// \param interval Processing interval
+ ///
+ ////////////////////////////////////////////////////////////
+ void setProcessingInterval(Time interval);
+
private:
////////////////////////////////////////////////////////////
@@ -299,24 +313,25 @@ private:
enum
{
- BufferCount = 3, ///< Number of audio buffers used by the streaming loop
- BufferRetries = 2 ///< Number of retries (excluding initial try) for onGetData()
+ BufferCount = 3, //!< Number of audio buffers used by the streaming loop
+ BufferRetries = 2 //!< Number of retries (excluding initial try) for onGetData()
};
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Thread m_thread; ///< Thread running the background tasks
- mutable Mutex m_threadMutex; ///< Thread mutex
- Status m_threadStartState; ///< State the thread starts in (Playing, Paused, Stopped)
- bool m_isStreaming; ///< Streaming state (true = playing, false = stopped)
- unsigned int m_buffers[BufferCount]; ///< Sound buffers used to store temporary audio data
- unsigned int m_channelCount; ///< Number of channels (1 = mono, 2 = stereo, ...)
- unsigned int m_sampleRate; ///< Frequency (samples / second)
- Uint32 m_format; ///< Format of the internal sound buffers
- bool m_loop; ///< Loop flag (true to loop, false to play once)
- Uint64 m_samplesProcessed; ///< Number of buffers processed since beginning of the stream
- Int64 m_bufferSeeks[BufferCount]; ///< If buffer is an "end buffer", holds next seek position, else NoLoop. For play offset calculation.
+ Thread m_thread; //!< Thread running the background tasks
+ mutable Mutex m_threadMutex; //!< Thread mutex
+ Status m_threadStartState; //!< State the thread starts in (Playing, Paused, Stopped)
+ bool m_isStreaming; //!< Streaming state (true = playing, false = stopped)
+ unsigned int m_buffers[BufferCount]; //!< Sound buffers used to store temporary audio data
+ unsigned int m_channelCount; //!< Number of channels (1 = mono, 2 = stereo, ...)
+ unsigned int m_sampleRate; //!< Frequency (samples / second)
+ Uint32 m_format; //!< Format of the internal sound buffers
+ bool m_loop; //!< Loop flag (true to loop, false to play once)
+ Uint64 m_samplesProcessed; //!< Number of samples processed since beginning of the stream
+ Int64 m_bufferSeeks[BufferCount]; //!< If buffer is an "end buffer", holds next seek position, else NoLoop. For play offset calculation.
+ Time m_processingInterval; //!< Interval for checking and filling the internal sound buffers.
};
} // namespace sf
diff --git a/include/SFML/Config.hpp b/include/SFML/Config.hpp
index 70b4a92d..3f282f2a 100644
--- a/include/SFML/Config.hpp
+++ b/include/SFML/Config.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -36,7 +36,7 @@
////////////////////////////////////////////////////////////
// Identify the operating system
-// see http://nadeausoftware.com/articles/2012/01/c_c_tip_how_use_compiler_predefined_macros_detect_operating_system
+// see https://sourceforge.net/p/predef/wiki/Home/
////////////////////////////////////////////////////////////
#if defined(_WIN32)
diff --git a/include/SFML/GpuPreference.hpp b/include/SFML/GpuPreference.hpp
index a05c5a1d..d0cd9adf 100644
--- a/include/SFML/GpuPreference.hpp
+++ b/include/SFML/GpuPreference.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Graphics.hpp b/include/SFML/Graphics.hpp
index db66c1fa..191c83fc 100644
--- a/include/SFML/Graphics.hpp
+++ b/include/SFML/Graphics.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -41,7 +41,6 @@
#include
#include
#include
-#include
#include
#include
#include
diff --git a/include/SFML/Graphics/BlendMode.hpp b/include/SFML/Graphics/BlendMode.hpp
index f3ec906f..4f8462b8 100644
--- a/include/SFML/Graphics/BlendMode.hpp
+++ b/include/SFML/Graphics/BlendMode.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -48,16 +48,16 @@ struct SFML_GRAPHICS_API BlendMode
////////////////////////////////////////////////////////
enum Factor
{
- Zero, ///< (0, 0, 0, 0)
- One, ///< (1, 1, 1, 1)
- SrcColor, ///< (src.r, src.g, src.b, src.a)
- OneMinusSrcColor, ///< (1, 1, 1, 1) - (src.r, src.g, src.b, src.a)
- DstColor, ///< (dst.r, dst.g, dst.b, dst.a)
- OneMinusDstColor, ///< (1, 1, 1, 1) - (dst.r, dst.g, dst.b, dst.a)
- SrcAlpha, ///< (src.a, src.a, src.a, src.a)
- OneMinusSrcAlpha, ///< (1, 1, 1, 1) - (src.a, src.a, src.a, src.a)
- DstAlpha, ///< (dst.a, dst.a, dst.a, dst.a)
- OneMinusDstAlpha ///< (1, 1, 1, 1) - (dst.a, dst.a, dst.a, dst.a)
+ Zero, //!< (0, 0, 0, 0)
+ One, //!< (1, 1, 1, 1)
+ SrcColor, //!< (src.r, src.g, src.b, src.a)
+ OneMinusSrcColor, //!< (1, 1, 1, 1) - (src.r, src.g, src.b, src.a)
+ DstColor, //!< (dst.r, dst.g, dst.b, dst.a)
+ OneMinusDstColor, //!< (1, 1, 1, 1) - (dst.r, dst.g, dst.b, dst.a)
+ SrcAlpha, //!< (src.a, src.a, src.a, src.a)
+ OneMinusSrcAlpha, //!< (1, 1, 1, 1) - (src.a, src.a, src.a, src.a)
+ DstAlpha, //!< (dst.a, dst.a, dst.a, dst.a)
+ OneMinusDstAlpha //!< (1, 1, 1, 1) - (dst.a, dst.a, dst.a, dst.a)
};
////////////////////////////////////////////////////////
@@ -68,9 +68,9 @@ struct SFML_GRAPHICS_API BlendMode
////////////////////////////////////////////////////////
enum Equation
{
- Add, ///< Pixel = Src * SrcFactor + Dst * DstFactor
- Subtract, ///< Pixel = Src * SrcFactor - Dst * DstFactor
- ReverseSubtract ///< Pixel = Dst * DstFactor - Src * SrcFactor
+ Add, //!< Pixel = Src * SrcFactor + Dst * DstFactor
+ Subtract, //!< Pixel = Src * SrcFactor - Dst * DstFactor
+ ReverseSubtract //!< Pixel = Dst * DstFactor - Src * SrcFactor
};
////////////////////////////////////////////////////////////
@@ -112,12 +112,12 @@ struct SFML_GRAPHICS_API BlendMode
////////////////////////////////////////////////////////////
// Member Data
////////////////////////////////////////////////////////////
- Factor colorSrcFactor; ///< Source blending factor for the color channels
- Factor colorDstFactor; ///< Destination blending factor for the color channels
- Equation colorEquation; ///< Blending equation for the color channels
- Factor alphaSrcFactor; ///< Source blending factor for the alpha channel
- Factor alphaDstFactor; ///< Destination blending factor for the alpha channel
- Equation alphaEquation; ///< Blending equation for the alpha channel
+ Factor colorSrcFactor; //!< Source blending factor for the color channels
+ Factor colorDstFactor; //!< Destination blending factor for the color channels
+ Equation colorEquation; //!< Blending equation for the color channels
+ Factor alphaSrcFactor; //!< Source blending factor for the alpha channel
+ Factor alphaDstFactor; //!< Destination blending factor for the alpha channel
+ Equation alphaEquation; //!< Blending equation for the alpha channel
};
////////////////////////////////////////////////////////////
@@ -147,10 +147,10 @@ SFML_GRAPHICS_API bool operator !=(const BlendMode& left, const BlendMode& right
////////////////////////////////////////////////////////////
// Commonly used blending modes
////////////////////////////////////////////////////////////
-SFML_GRAPHICS_API extern const BlendMode BlendAlpha; ///< Blend source and dest according to dest alpha
-SFML_GRAPHICS_API extern const BlendMode BlendAdd; ///< Add source to dest
-SFML_GRAPHICS_API extern const BlendMode BlendMultiply; ///< Multiply source and dest
-SFML_GRAPHICS_API extern const BlendMode BlendNone; ///< Overwrite dest with source
+SFML_GRAPHICS_API extern const BlendMode BlendAlpha; //!< Blend source and dest according to dest alpha
+SFML_GRAPHICS_API extern const BlendMode BlendAdd; //!< Add source to dest
+SFML_GRAPHICS_API extern const BlendMode BlendMultiply; //!< Multiply source and dest
+SFML_GRAPHICS_API extern const BlendMode BlendNone; //!< Overwrite dest with source
} // namespace sf
diff --git a/include/SFML/Graphics/CircleShape.hpp b/include/SFML/Graphics/CircleShape.hpp
index aa139c8e..6f01c8d1 100644
--- a/include/SFML/Graphics/CircleShape.hpp
+++ b/include/SFML/Graphics/CircleShape.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -111,8 +111,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- float m_radius; ///< Radius of the circle
- std::size_t m_pointCount; ///< Number of points composing the circle
+ float m_radius; //!< Radius of the circle
+ std::size_t m_pointCount; //!< Number of points composing the circle
};
} // namespace sf
diff --git a/include/SFML/Graphics/Color.hpp b/include/SFML/Graphics/Color.hpp
index 92931f11..6152b8c4 100644
--- a/include/SFML/Graphics/Color.hpp
+++ b/include/SFML/Graphics/Color.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -80,23 +80,23 @@ public:
////////////////////////////////////////////////////////////
// Static member data
////////////////////////////////////////////////////////////
- static const Color Black; ///< Black predefined color
- static const Color White; ///< White predefined color
- static const Color Red; ///< Red predefined color
- static const Color Green; ///< Green predefined color
- static const Color Blue; ///< Blue predefined color
- static const Color Yellow; ///< Yellow predefined color
- static const Color Magenta; ///< Magenta predefined color
- static const Color Cyan; ///< Cyan predefined color
- static const Color Transparent; ///< Transparent (black) predefined color
+ static const Color Black; //!< Black predefined color
+ static const Color White; //!< White predefined color
+ static const Color Red; //!< Red predefined color
+ static const Color Green; //!< Green predefined color
+ static const Color Blue; //!< Blue predefined color
+ static const Color Yellow; //!< Yellow predefined color
+ static const Color Magenta; //!< Magenta predefined color
+ static const Color Cyan; //!< Cyan predefined color
+ static const Color Transparent; //!< Transparent (black) predefined color
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Uint8 r; ///< Red component
- Uint8 g; ///< Green component
- Uint8 b; ///< Blue component
- Uint8 a; ///< Alpha (opacity) component
+ Uint8 r; //!< Red component
+ Uint8 g; //!< Green component
+ Uint8 b; //!< Blue component
+ Uint8 a; //!< Alpha (opacity) component
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Graphics/ConvexShape.hpp b/include/SFML/Graphics/ConvexShape.hpp
index 7b1bfd0c..45925651 100644
--- a/include/SFML/Graphics/ConvexShape.hpp
+++ b/include/SFML/Graphics/ConvexShape.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -112,7 +112,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::vector m_points; ///< Points composing the convex polygon
+ std::vector m_points; //!< Points composing the convex polygon
};
} // namespace sf
diff --git a/include/SFML/Graphics/Drawable.hpp b/include/SFML/Graphics/Drawable.hpp
index f03e5e0e..612a8203 100644
--- a/include/SFML/Graphics/Drawable.hpp
+++ b/include/SFML/Graphics/Drawable.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Graphics/Export.hpp b/include/SFML/Graphics/Export.hpp
index 1d9d6083..88e4358b 100644
--- a/include/SFML/Graphics/Export.hpp
+++ b/include/SFML/Graphics/Export.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Graphics/Font.hpp b/include/SFML/Graphics/Font.hpp
index 7316d430..b8e5d925 100644
--- a/include/SFML/Graphics/Font.hpp
+++ b/include/SFML/Graphics/Font.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -57,7 +57,7 @@ public:
////////////////////////////////////////////////////////////
struct Info
{
- std::string family; ///< The font family
+ std::string family; //!< The font family
};
public:
@@ -166,6 +166,10 @@ public:
/// might be available. If the glyph is not available at the
/// requested size, an empty glyph is returned.
///
+ /// You may want to use \ref hasGlyph to determine if the
+ /// glyph exists before requesting it. If the glyph does not
+ /// exist, a font specific default is returned.
+ ///
/// Be aware that using a negative value for the outline
/// thickness will cause distorted rendering.
///
@@ -179,6 +183,24 @@ public:
////////////////////////////////////////////////////////////
const Glyph& getGlyph(Uint32 codePoint, unsigned int characterSize, bool bold, float outlineThickness = 0) const;
+ ////////////////////////////////////////////////////////////
+ /// \brief Determine if this font has a glyph representing the requested code point
+ ///
+ /// Most fonts only include a very limited selection of glyphs from
+ /// specific Unicode subsets, like Latin, Cyrillic, or Asian characters.
+ ///
+ /// While code points without representation will return a font specific
+ /// default character, it might be useful to verify whether specific
+ /// code points are included to determine whether a font is suited
+ /// to display text in a specific language.
+ ///
+ /// \param codePoint Unicode code point to check
+ ///
+ /// \return True if the codepoint has a glyph representation, false otherwise
+ ///
+ ////////////////////////////////////////////////////////////
+ bool hasGlyph(Uint32 codePoint) const;
+
////////////////////////////////////////////////////////////
/// \brief Get the kerning offset of two glyphs
///
@@ -253,6 +275,32 @@ public:
////////////////////////////////////////////////////////////
const Texture& getTexture(unsigned int characterSize) const;
+ ////////////////////////////////////////////////////////////
+ /// \brief Enable or disable the smooth filter
+ ///
+ /// When the filter is activated, the font appears smoother
+ /// so that pixels are less noticeable. However if you want
+ /// the font to look exactly the same as its source file,
+ /// you should disable it.
+ /// The smooth filter is enabled by default.
+ ///
+ /// \param smooth True to enable smoothing, false to disable it
+ ///
+ /// \see isSmooth
+ ///
+ ////////////////////////////////////////////////////////////
+ void setSmooth(bool smooth);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Tell whether the smooth filter is enabled or not
+ ///
+ /// \return True if smoothing is enabled, false if it is disabled
+ ///
+ /// \see setSmooth
+ ///
+ ////////////////////////////////////////////////////////////
+ bool isSmooth() const;
+
////////////////////////////////////////////////////////////
/// \brief Overload of assignment operator
///
@@ -273,15 +321,15 @@ private:
{
Row(unsigned int rowTop, unsigned int rowHeight) : width(0), top(rowTop), height(rowHeight) {}
- unsigned int width; ///< Current width of the row
- unsigned int top; ///< Y position of the row into the texture
- unsigned int height; ///< Height of the row
+ unsigned int width; //!< Current width of the row
+ unsigned int top; //!< Y position of the row into the texture
+ unsigned int height; //!< Height of the row
};
////////////////////////////////////////////////////////////
// Types
////////////////////////////////////////////////////////////
- typedef std::map GlyphTable; ///< Table mapping a codepoint to its glyph
+ typedef std::map GlyphTable; //!< Table mapping a codepoint to its glyph
////////////////////////////////////////////////////////////
/// \brief Structure defining a page of glyphs
@@ -291,10 +339,10 @@ private:
{
Page();
- GlyphTable glyphs; ///< Table mapping code points to their corresponding glyph
- Texture texture; ///< Texture containing the pixels of the glyphs
- unsigned int nextRow; ///< Y position of the next new row in the texture
- std::vector rows; ///< List containing the position of all the existing rows
+ GlyphTable glyphs; //!< Table mapping code points to their corresponding glyph
+ Texture texture; //!< Texture containing the pixels of the glyphs
+ unsigned int nextRow; //!< Y position of the next new row in the texture
+ std::vector rows; //!< List containing the position of all the existing rows
};
////////////////////////////////////////////////////////////
@@ -341,21 +389,22 @@ private:
////////////////////////////////////////////////////////////
// Types
////////////////////////////////////////////////////////////
- typedef std::map PageTable; ///< Table mapping a character size to its page (texture)
+ typedef std::map PageTable; //!< Table mapping a character size to its page (texture)
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- void* m_library; ///< Pointer to the internal library interface (it is typeless to avoid exposing implementation details)
- void* m_face; ///< Pointer to the internal font face (it is typeless to avoid exposing implementation details)
- void* m_streamRec; ///< Pointer to the stream rec instance (it is typeless to avoid exposing implementation details)
- void* m_stroker; ///< Pointer to the stroker (it is typeless to avoid exposing implementation details)
- int* m_refCount; ///< Reference counter used by implicit sharing
- Info m_info; ///< Information about the font
- mutable PageTable m_pages; ///< Table containing the glyphs pages by character size
- mutable std::vector m_pixelBuffer; ///< Pixel buffer holding a glyph's pixels before being written to the texture
+ void* m_library; //!< Pointer to the internal library interface (it is typeless to avoid exposing implementation details)
+ void* m_face; //!< Pointer to the internal font face (it is typeless to avoid exposing implementation details)
+ void* m_streamRec; //!< Pointer to the stream rec instance (it is typeless to avoid exposing implementation details)
+ void* m_stroker; //!< Pointer to the stroker (it is typeless to avoid exposing implementation details)
+ int* m_refCount; //!< Reference counter used by implicit sharing
+ bool m_isSmooth; //!< Status of the smooth filter
+ Info m_info; //!< Information about the font
+ mutable PageTable m_pages; //!< Table containing the glyphs pages by character size
+ mutable std::vector m_pixelBuffer; //!< Pixel buffer holding a glyph's pixels before being written to the texture
#ifdef SFML_SYSTEM_ANDROID
- void* m_stream; ///< Asset file streamer (if loaded from file)
+ void* m_stream; //!< Asset file streamer (if loaded from file)
#endif
};
diff --git a/include/SFML/Graphics/Glsl.hpp b/include/SFML/Graphics/Glsl.hpp
index c395344e..6ea8694f 100644
--- a/include/SFML/Graphics/Glsl.hpp
+++ b/include/SFML/Graphics/Glsl.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Graphics/Glsl.inl b/include/SFML/Graphics/Glsl.inl
index 1fd2816a..4a839fdc 100644
--- a/include/SFML/Graphics/Glsl.inl
+++ b/include/SFML/Graphics/Glsl.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -81,7 +81,7 @@ struct Matrix
copyMatrix(transform, *this);
}
- float array[Columns * Rows]; ///< Array holding matrix data
+ float array[Columns * Rows]; //!< Array holding matrix data
};
////////////////////////////////////////////////////////////
@@ -148,8 +148,8 @@ struct Vector4
copyVector(color, *this);
}
- T x; ///< 1st component (X) of the 4D vector
- T y; ///< 2nd component (Y) of the 4D vector
- T z; ///< 3rd component (Z) of the 4D vector
- T w; ///< 4th component (W) of the 4D vector
+ T x; //!< 1st component (X) of the 4D vector
+ T y; //!< 2nd component (Y) of the 4D vector
+ T z; //!< 3rd component (Z) of the 4D vector
+ T w; //!< 4th component (W) of the 4D vector
};
diff --git a/include/SFML/Graphics/Glyph.hpp b/include/SFML/Graphics/Glyph.hpp
index ce2fb158..9ee00175 100644
--- a/include/SFML/Graphics/Glyph.hpp
+++ b/include/SFML/Graphics/Glyph.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -51,9 +51,9 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- float advance; ///< Offset to move horizontally to the next character
- FloatRect bounds; ///< Bounding rectangle of the glyph, in coordinates relative to the baseline
- IntRect textureRect; ///< Texture coordinates of the glyph inside the font's texture
+ float advance; //!< Offset to move horizontally to the next character
+ FloatRect bounds; //!< Bounding rectangle of the glyph, in coordinates relative to the baseline
+ IntRect textureRect; //!< Texture coordinates of the glyph inside the font's texture
};
} // namespace sf
diff --git a/include/SFML/Graphics/Image.hpp b/include/SFML/Graphics/Image.hpp
index a58b3bc8..f2a7518b 100644
--- a/include/SFML/Graphics/Image.hpp
+++ b/include/SFML/Graphics/Image.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -263,8 +263,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Vector2u m_size; ///< Image size
- std::vector m_pixels; ///< Pixels of the image
+ Vector2u m_size; //!< Image size
+ std::vector m_pixels; //!< Pixels of the image
};
} // namespace sf
diff --git a/include/SFML/Graphics/PrimitiveType.hpp b/include/SFML/Graphics/PrimitiveType.hpp
index 6e4a3949..08b675e3 100644
--- a/include/SFML/Graphics/PrimitiveType.hpp
+++ b/include/SFML/Graphics/PrimitiveType.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -38,18 +38,18 @@ namespace sf
////////////////////////////////////////////////////////////
enum PrimitiveType
{
- Points, ///< List of individual points
- Lines, ///< List of individual lines
- LineStrip, ///< List of connected lines, a point uses the previous point to form a line
- Triangles, ///< List of individual triangles
- TriangleStrip, ///< List of connected triangles, a point uses the two previous points to form a triangle
- TriangleFan, ///< List of connected triangles, a point uses the common center and the previous point to form a triangle
- Quads, ///< List of individual quads (deprecated, don't work with OpenGL ES)
+ Points, //!< List of individual points
+ Lines, //!< List of individual lines
+ LineStrip, //!< List of connected lines, a point uses the previous point to form a line
+ Triangles, //!< List of individual triangles
+ TriangleStrip, //!< List of connected triangles, a point uses the two previous points to form a triangle
+ TriangleFan, //!< List of connected triangles, a point uses the common center and the previous point to form a triangle
+ Quads, //!< List of individual quads (deprecated, don't work with OpenGL ES)
// Deprecated names
- LinesStrip = LineStrip, ///< \deprecated Use LineStrip instead
- TrianglesStrip = TriangleStrip, ///< \deprecated Use TriangleStrip instead
- TrianglesFan = TriangleFan ///< \deprecated Use TriangleFan instead
+ LinesStrip = LineStrip, //!< \deprecated Use LineStrip instead
+ TrianglesStrip = TriangleStrip, //!< \deprecated Use TriangleStrip instead
+ TrianglesFan = TriangleFan //!< \deprecated Use TriangleFan instead
};
} // namespace sf
diff --git a/include/SFML/Graphics/Rect.hpp b/include/SFML/Graphics/Rect.hpp
index 466db4d0..d6cba3dd 100644
--- a/include/SFML/Graphics/Rect.hpp
+++ b/include/SFML/Graphics/Rect.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -174,10 +174,10 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- T left; ///< Left coordinate of the rectangle
- T top; ///< Top coordinate of the rectangle
- T width; ///< Width of the rectangle
- T height; ///< Height of the rectangle
+ T left; //!< Left coordinate of the rectangle
+ T top; //!< Top coordinate of the rectangle
+ T width; //!< Width of the rectangle
+ T height; //!< Height of the rectangle
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Graphics/Rect.inl b/include/SFML/Graphics/Rect.inl
index 1aa073dc..d996c604 100644
--- a/include/SFML/Graphics/Rect.inl
+++ b/include/SFML/Graphics/Rect.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Graphics/RectangleShape.hpp b/include/SFML/Graphics/RectangleShape.hpp
index b4f2ff07..b3375794 100644
--- a/include/SFML/Graphics/RectangleShape.hpp
+++ b/include/SFML/Graphics/RectangleShape.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -99,7 +99,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Vector2f m_size; ///< Size of the rectangle
+ Vector2f m_size; //!< Size of the rectangle
};
} // namespace sf
diff --git a/include/SFML/Graphics/RenderStates.hpp b/include/SFML/Graphics/RenderStates.hpp
index a04e977a..ed6c9131 100644
--- a/include/SFML/Graphics/RenderStates.hpp
+++ b/include/SFML/Graphics/RenderStates.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -107,15 +107,15 @@ public:
////////////////////////////////////////////////////////////
// Static member data
////////////////////////////////////////////////////////////
- static const RenderStates Default; ///< Special instance holding the default render states
+ static const RenderStates Default; //!< Special instance holding the default render states
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- BlendMode blendMode; ///< Blending mode
- Transform transform; ///< Transform
- const Texture* texture; ///< Texture
- const Shader* shader; ///< Shader
+ BlendMode blendMode; //!< Blending mode
+ Transform transform; //!< Transform
+ const Texture* texture; //!< Texture
+ const Shader* shader; //!< Shader
};
} // namespace sf
diff --git a/include/SFML/Graphics/RenderTarget.hpp b/include/SFML/Graphics/RenderTarget.hpp
index 0b52320a..58bb8c33 100644
--- a/include/SFML/Graphics/RenderTarget.hpp
+++ b/include/SFML/Graphics/RenderTarget.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -30,8 +30,13 @@
////////////////////////////////////////////////////////////
#include
#include
+#include
+#include
+#include
+#include
#include
#include
+#include
#include
@@ -39,13 +44,6 @@ namespace sf
{
class Drawable;
class VertexBuffer;
-class View;
-class Vertex;
-
-namespace priv
-{
- class RenderTargetImpl;
-}
////////////////////////////////////////////////////////////
/// \brief Base class for all render targets (window, texture, ...)
@@ -387,10 +385,96 @@ protected:
private:
+ ////////////////////////////////////////////////////////////
+ /// \brief Apply the current view
+ ///
+ ////////////////////////////////////////////////////////////
+ void applyCurrentView();
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Apply a new blending mode
+ ///
+ /// \param mode Blending mode to apply
+ ///
+ ////////////////////////////////////////////////////////////
+ void applyBlendMode(const BlendMode& mode);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Apply a new transform
+ ///
+ /// \param transform Transform to apply
+ ///
+ ////////////////////////////////////////////////////////////
+ void applyTransform(const Transform& transform);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Apply a new texture
+ ///
+ /// \param texture Texture to apply
+ ///
+ ////////////////////////////////////////////////////////////
+ void applyTexture(const Texture* texture);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Apply a new shader
+ ///
+ /// \param shader Shader to apply
+ ///
+ ////////////////////////////////////////////////////////////
+ void applyShader(const Shader* shader);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Setup environment for drawing
+ ///
+ /// \param useVertexCache Are we going to use the vertex cache?
+ /// \param states Render states to use for drawing
+ ///
+ ////////////////////////////////////////////////////////////
+ void setupDraw(bool useVertexCache, const RenderStates& states);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Draw the primitives
+ ///
+ /// \param type Type of primitives to draw
+ /// \param firstVertex Index of the first vertex to use when drawing
+ /// \param vertexCount Number of vertices to use when drawing
+ ///
+ ////////////////////////////////////////////////////////////
+ void drawPrimitives(PrimitiveType type, std::size_t firstVertex, std::size_t vertexCount);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Clean up environment after drawing
+ ///
+ /// \param states Render states used for drawing
+ ///
+ ////////////////////////////////////////////////////////////
+ void cleanupDraw(const RenderStates& states);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Render states cache
+ ///
+ ////////////////////////////////////////////////////////////
+ struct StatesCache
+ {
+ enum {VertexCacheSize = 4};
+
+ bool enable; //!< Is the cache enabled?
+ bool glStatesSet; //!< Are our internal GL states set yet?
+ bool viewChanged; //!< Has the current view changed since last draw?
+ BlendMode lastBlendMode; //!< Cached blending mode
+ Uint64 lastTextureId; //!< Cached texture
+ bool texCoordsArrayEnabled; //!< Is GL_TEXTURE_COORD_ARRAY client state enabled?
+ bool useVertexCache; //!< Did we previously use the vertex cache?
+ Vertex vertexCache[VertexCacheSize]; //!< Pre-transformed vertices cache
+ };
+
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::RenderTargetImpl* m_impl; ///< Platform/hardware specific implementation
+ View m_defaultView; //!< Default view
+ View m_view; //!< Current view
+ StatesCache m_cache; //!< Render states cache
+ Uint64 m_id; //!< Unique number that identifies the RenderTarget
};
} // namespace sf
diff --git a/include/SFML/Graphics/RenderTexture.hpp b/include/SFML/Graphics/RenderTexture.hpp
index ebb39127..0931ee7b 100644
--- a/include/SFML/Graphics/RenderTexture.hpp
+++ b/include/SFML/Graphics/RenderTexture.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -238,8 +238,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::RenderTextureImpl* m_impl; ///< Platform/hardware specific implementation
- Texture m_texture; ///< Target texture to draw on
+ priv::RenderTextureImpl* m_impl; //!< Platform/hardware specific implementation
+ Texture m_texture; //!< Target texture to draw on
};
} // namespace sf
diff --git a/include/SFML/Graphics/RenderWindow.hpp b/include/SFML/Graphics/RenderWindow.hpp
index b8478197..bf32e356 100644
--- a/include/SFML/Graphics/RenderWindow.hpp
+++ b/include/SFML/Graphics/RenderWindow.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -183,7 +183,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- unsigned int m_defaultFrameBuffer; ///< Framebuffer to bind when targeting this window
+ unsigned int m_defaultFrameBuffer; //!< Framebuffer to bind when targeting this window
};
} // namespace sf
diff --git a/include/SFML/Graphics/Renderer.hpp b/include/SFML/Graphics/Renderer.hpp
deleted file mode 100644
index 75010d51..00000000
--- a/include/SFML/Graphics/Renderer.hpp
+++ /dev/null
@@ -1,117 +0,0 @@
-////////////////////////////////////////////////////////////
-//
-// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
-//
-// This software is provided 'as-is', without any express or implied warranty.
-// In no event will the authors be held liable for any damages arising from the use of this software.
-//
-// Permission is granted to anyone to use this software for any purpose,
-// including commercial applications, and to alter it and redistribute it freely,
-// subject to the following restrictions:
-//
-// 1. The origin of this software must not be misrepresented;
-// you must not claim that you wrote the original software.
-// If you use this software in a product, an acknowledgment
-// in the product documentation would be appreciated but is not required.
-//
-// 2. Altered source versions must be plainly marked as such,
-// and must not be misrepresented as being the original software.
-//
-// 3. This notice may not be removed or altered from any source distribution.
-//
-////////////////////////////////////////////////////////////
-
-#ifndef SFML_RENDERER_HPP
-#define SFML_RENDERER_HPP
-
-////////////////////////////////////////////////////////////
-// Headers
-////////////////////////////////////////////////////////////
-#include
-
-
-namespace sf
-{
-namespace Renderer
-{
- ////////////////////////////////////////////////////////////
- /// \ingroup graphics
- /// \brief Enumeration of the renderer types
- ///
- ////////////////////////////////////////////////////////////
- enum
- {
- Legacy = 0, ///< Let SFML choose the renderer for best compatibility
- OpenGL1 = 1 << 0, ///< OpenGL 1.x renderer
-
- Default = Legacy ///< Default renderer
- };
-}
-
-////////////////////////////////////////////////////////////
-/// \ingroup graphics
-/// \brief Get the available renderers
-///
-/// SFML determines at runtime the renderers that are supported
-/// on the target system. These are returned by this function.
-/// When calling setRenderers(), only renderers returned by this
-/// function are allowed to be specified.
-///
-/// \return Renderers supported on the current system
-///
-/// \see setRenderers, getRenderer
-///
-////////////////////////////////////////////////////////////
-Uint32 SFML_GRAPHICS_API getAvailableRenderers();
-
-////////////////////////////////////////////////////////////
-/// \ingroup graphics
-/// \brief Set the renderers SFML is allowed to pick from
-///
-/// Before anything graphics related is performed, it is possible
-/// to specify via this function the renderers that SFML is allowed
-/// to choose from to perform any future rendering operations.
-///
-/// The renderers available on the target system can be retrieved
-/// via getAvailableRenderers().
-///
-/// Once SFML has chosen a renderer, it is final until the next time
-/// the application is run. As such, this function must be called as
-/// soon as possible if the user decides they want influence the
-/// selection process in any way.
-///
-/// If the applicable renderers are not explicitly set by calling this
-/// function, SFML will automatically choose from everything that is
-/// supported on the target system.
-///
-/// \param renderers Bit-wise OR of renderers SFML is allowed to pick from
-///
-/// \see getAvailableRenderers, getRenderer
-///
-////////////////////////////////////////////////////////////
-void SFML_GRAPHICS_API setRenderers(Uint32 renderers);
-
-////////////////////////////////////////////////////////////
-/// \ingroup graphics
-/// \brief Get the renderer SFML has selected to use
-///
-/// Calling this function will force SFML to finalize its decision
-/// on which renderer it wants to make use of if it has not already
-/// done so. The selected renderer is then returned by this function.
-///
-/// After this function has been called either from user code or
-/// internally within SFML itself, calling setRenderers() will no
-/// longer have any effect until the next time the application is run.
-///
-/// \return The renderer SFML has selected to use
-///
-/// \see setRenderers
-///
-////////////////////////////////////////////////////////////
-Uint32 SFML_GRAPHICS_API getRenderer();
-
-} // namespace sf
-
-
-#endif // SFML_RENDERER_HPP
diff --git a/include/SFML/Graphics/Shader.hpp b/include/SFML/Graphics/Shader.hpp
index 62dfc612..9ac485a4 100644
--- a/include/SFML/Graphics/Shader.hpp
+++ b/include/SFML/Graphics/Shader.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -45,16 +45,11 @@ class InputStream;
class Texture;
class Transform;
-namespace priv
-{
- class ShaderImpl;
-}
-
////////////////////////////////////////////////////////////
/// \brief Shader class (vertex, geometry and fragment)
///
////////////////////////////////////////////////////////////
-class SFML_GRAPHICS_API Shader : NonCopyable
+class SFML_GRAPHICS_API Shader : GlResource, NonCopyable
{
public:
@@ -64,9 +59,9 @@ public:
////////////////////////////////////////////////////////////
enum Type
{
- Vertex, ///< %Vertex shader
- Geometry, ///< Geometry shader
- Fragment ///< Fragment (pixel) shader
+ Vertex, //!< %Vertex shader
+ Geometry, //!< Geometry shader
+ Fragment //!< Fragment (pixel) shader
};
////////////////////////////////////////////////////////////
@@ -698,10 +693,62 @@ public:
private:
+ ////////////////////////////////////////////////////////////
+ /// \brief Compile the shader(s) and create the program
+ ///
+ /// If one of the arguments is NULL, the corresponding shader
+ /// is not created.
+ ///
+ /// \param vertexShaderCode Source code of the vertex shader
+ /// \param geometryShaderCode Source code of the geometry shader
+ /// \param fragmentShaderCode Source code of the fragment shader
+ ///
+ /// \return True on success, false if any error happened
+ ///
+ ////////////////////////////////////////////////////////////
+ bool compile(const char* vertexShaderCode, const char* geometryShaderCode, const char* fragmentShaderCode);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Bind all the textures used by the shader
+ ///
+ /// This function each texture to a different unit, and
+ /// updates the corresponding variables in the shader accordingly.
+ ///
+ ////////////////////////////////////////////////////////////
+ void bindTextures() const;
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Get the location ID of a shader uniform
+ ///
+ /// \param name Name of the uniform variable to search
+ ///
+ /// \return Location ID of the uniform, or -1 if not found
+ ///
+ ////////////////////////////////////////////////////////////
+ int getUniformLocation(const std::string& name);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief RAII object to save and restore the program
+ /// binding while uniforms are being set
+ ///
+ /// Implementation is private in the .cpp file.
+ ///
+ ////////////////////////////////////////////////////////////
+ struct UniformBinder;
+
+ ////////////////////////////////////////////////////////////
+ // Types
+ ////////////////////////////////////////////////////////////
+ typedef std::map TextureTable;
+ typedef std::map UniformTable;
+
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::ShaderImpl* m_impl; ///< Platform/hardware specific implementation
+ unsigned int m_shaderProgram; //!< OpenGL identifier for the program
+ int m_currentTexture; //!< Location of the current texture in the shader
+ TextureTable m_textures; //!< Texture variables in the shader, mapped to their location
+ UniformTable m_uniforms; //!< Parameters location cache
};
} // namespace sf
diff --git a/include/SFML/Graphics/Shape.hpp b/include/SFML/Graphics/Shape.hpp
index 94990f29..44893cb5 100644
--- a/include/SFML/Graphics/Shape.hpp
+++ b/include/SFML/Graphics/Shape.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -305,15 +305,15 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- const Texture* m_texture; ///< Texture of the shape
- IntRect m_textureRect; ///< Rectangle defining the area of the source texture to display
- Color m_fillColor; ///< Fill color
- Color m_outlineColor; ///< Outline color
- float m_outlineThickness; ///< Thickness of the shape's outline
- VertexArray m_vertices; ///< Vertex array containing the fill geometry
- VertexArray m_outlineVertices; ///< Vertex array containing the outline geometry
- FloatRect m_insideBounds; ///< Bounding rectangle of the inside (fill)
- FloatRect m_bounds; ///< Bounding rectangle of the whole shape (outline + fill)
+ const Texture* m_texture; //!< Texture of the shape
+ IntRect m_textureRect; //!< Rectangle defining the area of the source texture to display
+ Color m_fillColor; //!< Fill color
+ Color m_outlineColor; //!< Outline color
+ float m_outlineThickness; //!< Thickness of the shape's outline
+ VertexArray m_vertices; //!< Vertex array containing the fill geometry
+ VertexArray m_outlineVertices; //!< Vertex array containing the outline geometry
+ FloatRect m_insideBounds; //!< Bounding rectangle of the inside (fill)
+ FloatRect m_bounds; //!< Bounding rectangle of the whole shape (outline + fill)
};
} // namespace sf
diff --git a/include/SFML/Graphics/Sprite.hpp b/include/SFML/Graphics/Sprite.hpp
index b44584be..9581192e 100644
--- a/include/SFML/Graphics/Sprite.hpp
+++ b/include/SFML/Graphics/Sprite.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -215,9 +215,9 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Vertex m_vertices[4]; ///< Vertices defining the sprite's geometry
- const Texture* m_texture; ///< Texture of the sprite
- IntRect m_textureRect; ///< Rectangle defining the area of the source texture to display
+ Vertex m_vertices[4]; //!< Vertices defining the sprite's geometry
+ const Texture* m_texture; //!< Texture of the sprite
+ IntRect m_textureRect; //!< Rectangle defining the area of the source texture to display
};
} // namespace sf
diff --git a/include/SFML/Graphics/Text.hpp b/include/SFML/Graphics/Text.hpp
index 158e149a..8b1a093f 100644
--- a/include/SFML/Graphics/Text.hpp
+++ b/include/SFML/Graphics/Text.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -55,11 +55,11 @@ public:
////////////////////////////////////////////////////////////
enum Style
{
- Regular = 0, ///< Regular characters, no style
- Bold = 1 << 0, ///< Bold characters
- Italic = 1 << 1, ///< Italic characters
- Underlined = 1 << 2, ///< Underlined characters
- StrikeThrough = 1 << 3 ///< Strike through characters
+ Regular = 0, //!< Regular characters, no style
+ Bold = 1 << 0, //!< Bold characters
+ Italic = 1 << 1, //!< Italic characters
+ Underlined = 1 << 2, //!< Underlined characters
+ StrikeThrough = 1 << 3 //!< Strike through characters
};
////////////////////////////////////////////////////////////
@@ -435,20 +435,20 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- String m_string; ///< String to display
- const Font* m_font; ///< Font used to display the string
- unsigned int m_characterSize; ///< Base size of characters, in pixels
- float m_letterSpacingFactor; ///< Spacing factor between letters
- float m_lineSpacingFactor; ///< Spacing factor between lines
- Uint32 m_style; ///< Text style (see Style enum)
- Color m_fillColor; ///< Text fill color
- Color m_outlineColor; ///< Text outline color
- float m_outlineThickness; ///< Thickness of the text's outline
- mutable VertexArray m_vertices; ///< Vertex array containing the fill geometry
- mutable VertexArray m_outlineVertices; ///< Vertex array containing the outline geometry
- mutable FloatRect m_bounds; ///< Bounding rectangle of the text (in local coordinates)
- mutable bool m_geometryNeedUpdate; ///< Does the geometry need to be recomputed?
- mutable Uint64 m_fontTextureId; ///< The font texture id
+ String m_string; //!< String to display
+ const Font* m_font; //!< Font used to display the string
+ unsigned int m_characterSize; //!< Base size of characters, in pixels
+ float m_letterSpacingFactor; //!< Spacing factor between letters
+ float m_lineSpacingFactor; //!< Spacing factor between lines
+ Uint32 m_style; //!< Text style (see Style enum)
+ Color m_fillColor; //!< Text fill color
+ Color m_outlineColor; //!< Text outline color
+ float m_outlineThickness; //!< Thickness of the text's outline
+ mutable VertexArray m_vertices; //!< Vertex array containing the fill geometry
+ mutable VertexArray m_outlineVertices; //!< Vertex array containing the outline geometry
+ mutable FloatRect m_bounds; //!< Bounding rectangle of the text (in local coordinates)
+ mutable bool m_geometryNeedUpdate; //!< Does the geometry need to be recomputed?
+ mutable Uint64 m_fontTextureId; //!< The font texture id
};
} // namespace sf
diff --git a/include/SFML/Graphics/Texture.hpp b/include/SFML/Graphics/Texture.hpp
index 1f0b7936..0fbb0f9c 100644
--- a/include/SFML/Graphics/Texture.hpp
+++ b/include/SFML/Graphics/Texture.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -29,30 +29,23 @@
// Headers
////////////////////////////////////////////////////////////
#include
-#include
-#include
-#include
+#include
+#include
namespace sf
{
class InputStream;
+class RenderTarget;
class RenderTexture;
class Text;
-class Image;
class Window;
-namespace priv
-{
- class TextureImpl;
- class RenderTargetImpl;
-}
-
////////////////////////////////////////////////////////////
/// \brief Image living on the graphics card that can be used for drawing
///
////////////////////////////////////////////////////////////
-class SFML_GRAPHICS_API Texture
+class SFML_GRAPHICS_API Texture : GlResource
{
public:
@@ -62,8 +55,8 @@ public:
////////////////////////////////////////////////////////////
enum CoordinateType
{
- Normalized, ///< Texture coordinates in range [0 .. 1]
- Pixels ///< Texture coordinates in range [0 .. size]
+ Normalized, //!< Texture coordinates in range [0 .. 1]
+ Pixels //!< Texture coordinates in range [0 .. size]
};
public:
@@ -594,12 +587,45 @@ private:
friend class Text;
friend class RenderTexture;
- friend class priv::RenderTargetImpl;
+ friend class RenderTarget;
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Get a valid image size according to hardware support
+ ///
+ /// This function checks whether the graphics driver supports
+ /// non power of two sizes or not, and adjusts the size
+ /// accordingly.
+ /// The returned size is greater than or equal to the original size.
+ ///
+ /// \param size size to convert
+ ///
+ /// \return Valid nearest size (greater than or equal to specified size)
+ ///
+ ////////////////////////////////////////////////////////////
+ static unsigned int getValidSize(unsigned int size);
+
+ ////////////////////////////////////////////////////////////
+ /// \brief Invalidate the mipmap if one exists
+ ///
+ /// This also resets the texture's minifying function.
+ /// This function is mainly for internal use by RenderTexture.
+ ///
+ ////////////////////////////////////////////////////////////
+ void invalidateMipmap();
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::TextureImpl* m_impl; ///< Platform/hardware specific implementation
+ Vector2u m_size; //!< Public texture size
+ Vector2u m_actualSize; //!< Actual texture size (can be greater than public size because of padding)
+ unsigned int m_texture; //!< Internal texture identifier
+ bool m_isSmooth; //!< Status of the smooth filter
+ bool m_sRgb; //!< Should the texture source be converted from sRGB?
+ bool m_isRepeated; //!< Is the texture in repeat mode?
+ mutable bool m_pixelsFlipped; //!< To work around the inconsistency in Y orientation
+ bool m_fboAttachment; //!< Is this texture owned by a framebuffer object?
+ bool m_hasMipmap; //!< Has the mipmap been generated?
+ Uint64 m_cacheId; //!< Unique number that identifies the texture to the render target's cache
};
} // namespace sf
diff --git a/include/SFML/Graphics/Transform.hpp b/include/SFML/Graphics/Transform.hpp
index 1ee2c86a..d46aeebb 100644
--- a/include/SFML/Graphics/Transform.hpp
+++ b/include/SFML/Graphics/Transform.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -100,6 +100,12 @@ public:
////////////////////////////////////////////////////////////
/// \brief Transform a 2D point
///
+ /// These two statements are equivalent:
+ /// \code
+ /// sf::Vector2f transformedPoint = matrix.transformPoint(x, y);
+ /// sf::Vector2f transformedPoint = matrix * sf::Vector2f(x, y);
+ /// \endcode
+ ///
/// \param x X coordinate of the point to transform
/// \param y Y coordinate of the point to transform
///
@@ -111,6 +117,12 @@ public:
////////////////////////////////////////////////////////////
/// \brief Transform a 2D point
///
+ /// These two statements are equivalent:
+ /// \code
+ /// sf::Vector2f transformedPoint = matrix.transformPoint(point);
+ /// sf::Vector2f transformedPoint = matrix * point;
+ /// \endcode
+ ///
/// \param point Point to transform
///
/// \return Transformed point
@@ -138,8 +150,14 @@ public:
/// \brief Combine the current transform with another one
///
/// The result is a transform that is equivalent to applying
- /// *this followed by \a transform. Mathematically, it is
- /// equivalent to a matrix multiplication.
+ /// \a transform followed by *this. Mathematically, it is
+ /// equivalent to a matrix multiplication (*this) * transform.
+ ///
+ /// These two statements are equivalent:
+ /// \code
+ /// left.combine(right);
+ /// left *= right;
+ /// \endcode
///
/// \param transform Transform to combine with this transform
///
@@ -351,14 +369,14 @@ public:
////////////////////////////////////////////////////////////
// Static member data
////////////////////////////////////////////////////////////
- static const Transform Identity; ///< The identity transform (does nothing)
+ static const Transform Identity; //!< The identity transform (does nothing)
private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- float m_matrix[16]; ///< 4x4 matrix defining the transformation
+ float m_matrix[16]; //!< 4x4 matrix defining the transformation
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Graphics/Transformable.hpp b/include/SFML/Graphics/Transformable.hpp
index b5fe42f3..c1560e2a 100644
--- a/include/SFML/Graphics/Transformable.hpp
+++ b/include/SFML/Graphics/Transformable.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -316,14 +316,14 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Vector2f m_origin; ///< Origin of translation/rotation/scaling of the object
- Vector2f m_position; ///< Position of the object in the 2D world
- float m_rotation; ///< Orientation of the object, in degrees
- Vector2f m_scale; ///< Scale of the object
- mutable Transform m_transform; ///< Combined transformation of the object
- mutable bool m_transformNeedUpdate; ///< Does the transform need to be recomputed?
- mutable Transform m_inverseTransform; ///< Combined transformation of the object
- mutable bool m_inverseTransformNeedUpdate; ///< Does the transform need to be recomputed?
+ Vector2f m_origin; //!< Origin of translation/rotation/scaling of the object
+ Vector2f m_position; //!< Position of the object in the 2D world
+ float m_rotation; //!< Orientation of the object, in degrees
+ Vector2f m_scale; //!< Scale of the object
+ mutable Transform m_transform; //!< Combined transformation of the object
+ mutable bool m_transformNeedUpdate; //!< Does the transform need to be recomputed?
+ mutable Transform m_inverseTransform; //!< Combined transformation of the object
+ mutable bool m_inverseTransformNeedUpdate; //!< Does the transform need to be recomputed?
};
} // namespace sf
diff --git a/include/SFML/Graphics/Vertex.hpp b/include/SFML/Graphics/Vertex.hpp
index f3284492..6755479e 100644
--- a/include/SFML/Graphics/Vertex.hpp
+++ b/include/SFML/Graphics/Vertex.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -94,9 +94,9 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Vector2f position; ///< 2D position of the vertex
- Color color; ///< Color of the vertex
- Vector2f texCoords; ///< Coordinates of the texture's pixel to map to the vertex
+ Vector2f position; //!< 2D position of the vertex
+ Color color; //!< Color of the vertex
+ Vector2f texCoords; //!< Coordinates of the texture's pixel to map to the vertex
};
} // namespace sf
diff --git a/include/SFML/Graphics/VertexArray.hpp b/include/SFML/Graphics/VertexArray.hpp
index 0f121be3..1645f65f 100644
--- a/include/SFML/Graphics/VertexArray.hpp
+++ b/include/SFML/Graphics/VertexArray.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -187,8 +187,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::vector m_vertices; ///< Vertices contained in the array
- PrimitiveType m_primitiveType; ///< Type of primitives to draw
+ std::vector m_vertices; //!< Vertices contained in the array
+ PrimitiveType m_primitiveType; //!< Type of primitives to draw
};
} // namespace sf
diff --git a/include/SFML/Graphics/VertexBuffer.hpp b/include/SFML/Graphics/VertexBuffer.hpp
index a4e5141a..7daaf014 100644
--- a/include/SFML/Graphics/VertexBuffer.hpp
+++ b/include/SFML/Graphics/VertexBuffer.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -31,6 +31,7 @@
#include
#include
#include
+#include
namespace sf
@@ -38,16 +39,11 @@ namespace sf
class RenderTarget;
class Vertex;
-namespace priv
-{
- class VertexBufferImpl;
-}
-
////////////////////////////////////////////////////////////
/// \brief Vertex buffer storage for one or more 2D primitives
///
////////////////////////////////////////////////////////////
-class SFML_GRAPHICS_API VertexBuffer : public Drawable
+class SFML_GRAPHICS_API VertexBuffer : public Drawable, private GlResource
{
public:
@@ -63,9 +59,9 @@ public:
////////////////////////////////////////////////////////////
enum Usage
{
- Stream, ///< Constantly changing data
- Dynamic, ///< Occasionally changing data
- Static ///< Rarely changing data
+ Stream, //!< Constantly changing data
+ Dynamic, //!< Occasionally changing data
+ Static //!< Rarely changing data
};
////////////////////////////////////////////////////////////
@@ -338,8 +334,10 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::VertexBufferImpl* m_impl; ///< Platform/hardware specific implementation
- PrimitiveType m_primitiveType; ///< Type of primitives to draw
+ unsigned int m_buffer; //!< Internal buffer identifier
+ std::size_t m_size; //!< Size in Vertexes of the currently allocated buffer
+ PrimitiveType m_primitiveType; //!< Type of primitives to draw
+ Usage m_usage; //!< How this vertex buffer is to be used
};
} // namespace sf
diff --git a/include/SFML/Graphics/View.hpp b/include/SFML/Graphics/View.hpp
index b85d8817..6712c944 100644
--- a/include/SFML/Graphics/View.hpp
+++ b/include/SFML/Graphics/View.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -269,14 +269,14 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Vector2f m_center; ///< Center of the view, in scene coordinates
- Vector2f m_size; ///< Size of the view, in scene coordinates
- float m_rotation; ///< Angle of rotation of the view rectangle, in degrees
- FloatRect m_viewport; ///< Viewport rectangle, expressed as a factor of the render-target's size
- mutable Transform m_transform; ///< Precomputed projection transform corresponding to the view
- mutable Transform m_inverseTransform; ///< Precomputed inverse projection transform corresponding to the view
- mutable bool m_transformUpdated; ///< Internal state telling if the transform needs to be updated
- mutable bool m_invTransformUpdated; ///< Internal state telling if the inverse transform needs to be updated
+ Vector2f m_center; //!< Center of the view, in scene coordinates
+ Vector2f m_size; //!< Size of the view, in scene coordinates
+ float m_rotation; //!< Angle of rotation of the view rectangle, in degrees
+ FloatRect m_viewport; //!< Viewport rectangle, expressed as a factor of the render-target's size
+ mutable Transform m_transform; //!< Precomputed projection transform corresponding to the view
+ mutable Transform m_inverseTransform; //!< Precomputed inverse projection transform corresponding to the view
+ mutable bool m_transformUpdated; //!< Internal state telling if the transform needs to be updated
+ mutable bool m_invTransformUpdated; //!< Internal state telling if the inverse transform needs to be updated
};
} // namespace sf
diff --git a/include/SFML/Main.hpp b/include/SFML/Main.hpp
index 9cc93623..27e3296e 100644
--- a/include/SFML/Main.hpp
+++ b/include/SFML/Main.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Network.hpp b/include/SFML/Network.hpp
index fc2c626b..f3f98c30 100644
--- a/include/SFML/Network.hpp
+++ b/include/SFML/Network.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Network/Export.hpp b/include/SFML/Network/Export.hpp
index b3c52218..516a9d08 100644
--- a/include/SFML/Network/Export.hpp
+++ b/include/SFML/Network/Export.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Network/Ftp.hpp b/include/SFML/Network/Ftp.hpp
index ebdf27bb..ddc3a9c8 100644
--- a/include/SFML/Network/Ftp.hpp
+++ b/include/SFML/Network/Ftp.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -54,9 +54,9 @@ public:
////////////////////////////////////////////////////////////
enum TransferMode
{
- Binary, ///< Binary mode (file is transfered as a sequence of bytes)
- Ascii, ///< Text mode using ASCII encoding
- Ebcdic ///< Text mode using EBCDIC encoding
+ Binary, //!< Binary mode (file is transfered as a sequence of bytes)
+ Ascii, //!< Text mode using ASCII encoding
+ Ebcdic //!< Text mode using EBCDIC encoding
};
////////////////////////////////////////////////////////////
@@ -75,62 +75,62 @@ public:
{
// 1xx: the requested action is being initiated,
// expect another reply before proceeding with a new command
- RestartMarkerReply = 110, ///< Restart marker reply
- ServiceReadySoon = 120, ///< Service ready in N minutes
- DataConnectionAlreadyOpened = 125, ///< Data connection already opened, transfer starting
- OpeningDataConnection = 150, ///< File status ok, about to open data connection
+ RestartMarkerReply = 110, //!< Restart marker reply
+ ServiceReadySoon = 120, //!< Service ready in N minutes
+ DataConnectionAlreadyOpened = 125, //!< Data connection already opened, transfer starting
+ OpeningDataConnection = 150, //!< File status ok, about to open data connection
// 2xx: the requested action has been successfully completed
- Ok = 200, ///< Command ok
- PointlessCommand = 202, ///< Command not implemented
- SystemStatus = 211, ///< System status, or system help reply
- DirectoryStatus = 212, ///< Directory status
- FileStatus = 213, ///< File status
- HelpMessage = 214, ///< Help message
- SystemType = 215, ///< NAME system type, where NAME is an official system name from the list in the Assigned Numbers document
- ServiceReady = 220, ///< Service ready for new user
- ClosingConnection = 221, ///< Service closing control connection
- DataConnectionOpened = 225, ///< Data connection open, no transfer in progress
- ClosingDataConnection = 226, ///< Closing data connection, requested file action successful
- EnteringPassiveMode = 227, ///< Entering passive mode
- LoggedIn = 230, ///< User logged in, proceed. Logged out if appropriate
- FileActionOk = 250, ///< Requested file action ok
- DirectoryOk = 257, ///< PATHNAME created
+ Ok = 200, //!< Command ok
+ PointlessCommand = 202, //!< Command not implemented
+ SystemStatus = 211, //!< System status, or system help reply
+ DirectoryStatus = 212, //!< Directory status
+ FileStatus = 213, //!< File status
+ HelpMessage = 214, //!< Help message
+ SystemType = 215, //!< NAME system type, where NAME is an official system name from the list in the Assigned Numbers document
+ ServiceReady = 220, //!< Service ready for new user
+ ClosingConnection = 221, //!< Service closing control connection
+ DataConnectionOpened = 225, //!< Data connection open, no transfer in progress
+ ClosingDataConnection = 226, //!< Closing data connection, requested file action successful
+ EnteringPassiveMode = 227, //!< Entering passive mode
+ LoggedIn = 230, //!< User logged in, proceed. Logged out if appropriate
+ FileActionOk = 250, //!< Requested file action ok
+ DirectoryOk = 257, //!< PATHNAME created
// 3xx: the command has been accepted, but the requested action
// is dormant, pending receipt of further information
- NeedPassword = 331, ///< User name ok, need password
- NeedAccountToLogIn = 332, ///< Need account for login
- NeedInformation = 350, ///< Requested file action pending further information
+ NeedPassword = 331, //!< User name ok, need password
+ NeedAccountToLogIn = 332, //!< Need account for login
+ NeedInformation = 350, //!< Requested file action pending further information
// 4xx: the command was not accepted and the requested action did not take place,
// but the error condition is temporary and the action may be requested again
- ServiceUnavailable = 421, ///< Service not available, closing control connection
- DataConnectionUnavailable = 425, ///< Can't open data connection
- TransferAborted = 426, ///< Connection closed, transfer aborted
- FileActionAborted = 450, ///< Requested file action not taken
- LocalError = 451, ///< Requested action aborted, local error in processing
- InsufficientStorageSpace = 452, ///< Requested action not taken; insufficient storage space in system, file unavailable
+ ServiceUnavailable = 421, //!< Service not available, closing control connection
+ DataConnectionUnavailable = 425, //!< Can't open data connection
+ TransferAborted = 426, //!< Connection closed, transfer aborted
+ FileActionAborted = 450, //!< Requested file action not taken
+ LocalError = 451, //!< Requested action aborted, local error in processing
+ InsufficientStorageSpace = 452, //!< Requested action not taken; insufficient storage space in system, file unavailable
// 5xx: the command was not accepted and
// the requested action did not take place
- CommandUnknown = 500, ///< Syntax error, command unrecognized
- ParametersUnknown = 501, ///< Syntax error in parameters or arguments
- CommandNotImplemented = 502, ///< Command not implemented
- BadCommandSequence = 503, ///< Bad sequence of commands
- ParameterNotImplemented = 504, ///< Command not implemented for that parameter
- NotLoggedIn = 530, ///< Not logged in
- NeedAccountToStore = 532, ///< Need account for storing files
- FileUnavailable = 550, ///< Requested action not taken, file unavailable
- PageTypeUnknown = 551, ///< Requested action aborted, page type unknown
- NotEnoughMemory = 552, ///< Requested file action aborted, exceeded storage allocation
- FilenameNotAllowed = 553, ///< Requested action not taken, file name not allowed
+ CommandUnknown = 500, //!< Syntax error, command unrecognized
+ ParametersUnknown = 501, //!< Syntax error in parameters or arguments
+ CommandNotImplemented = 502, //!< Command not implemented
+ BadCommandSequence = 503, //!< Bad sequence of commands
+ ParameterNotImplemented = 504, //!< Command not implemented for that parameter
+ NotLoggedIn = 530, //!< Not logged in
+ NeedAccountToStore = 532, //!< Need account for storing files
+ FileUnavailable = 550, //!< Requested action not taken, file unavailable
+ PageTypeUnknown = 551, //!< Requested action aborted, page type unknown
+ NotEnoughMemory = 552, //!< Requested file action aborted, exceeded storage allocation
+ FilenameNotAllowed = 553, //!< Requested action not taken, file name not allowed
// 10xx: SFML custom codes
- InvalidResponse = 1000, ///< Not part of the FTP standard, generated by SFML when a received response cannot be parsed
- ConnectionFailed = 1001, ///< Not part of the FTP standard, generated by SFML when the low-level socket connection with the server fails
- ConnectionClosed = 1002, ///< Not part of the FTP standard, generated by SFML when the low-level socket connection is unexpectedly closed
- InvalidFile = 1003 ///< Not part of the FTP standard, generated by SFML when a local file cannot be read or written
+ InvalidResponse = 1000, //!< Not part of the FTP standard, generated by SFML when a received response cannot be parsed
+ ConnectionFailed = 1001, //!< Not part of the FTP standard, generated by SFML when the low-level socket connection with the server fails
+ ConnectionClosed = 1002, //!< Not part of the FTP standard, generated by SFML when the low-level socket connection is unexpectedly closed
+ InvalidFile = 1003 //!< Not part of the FTP standard, generated by SFML when a local file cannot be read or written
};
////////////////////////////////////////////////////////////
@@ -177,8 +177,8 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Status m_status; ///< Status code returned from the server
- std::string m_message; ///< Last message received from the server
+ Status m_status; //!< Status code returned from the server
+ std::string m_message; //!< Last message received from the server
};
////////////////////////////////////////////////////////////
@@ -210,7 +210,7 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::string m_directory; ///< Directory extracted from the response message
+ std::string m_directory; //!< Directory extracted from the response message
};
@@ -244,7 +244,7 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::vector m_listing; ///< Directory/file names extracted from the data
+ std::vector m_listing; //!< Directory/file names extracted from the data
};
@@ -533,8 +533,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- TcpSocket m_commandSocket; ///< Socket holding the control connection with the server
- std::string m_receiveBuffer; ///< Received command data that is yet to be processed
+ TcpSocket m_commandSocket; //!< Socket holding the control connection with the server
+ std::string m_receiveBuffer; //!< Received command data that is yet to be processed
};
} // namespace sf
diff --git a/include/SFML/Network/Http.hpp b/include/SFML/Network/Http.hpp
index c2008153..61754729 100644
--- a/include/SFML/Network/Http.hpp
+++ b/include/SFML/Network/Http.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -61,11 +61,11 @@ public:
////////////////////////////////////////////////////////////
enum Method
{
- Get, ///< Request in get mode, standard method to retrieve a page
- Post, ///< Request in post mode, usually to send data to a page
- Head, ///< Request a page's header only
- Put, ///< Request in put mode, useful for a REST API
- Delete ///< Request in delete mode, useful for a REST API
+ Get, //!< Request in get mode, standard method to retrieve a page
+ Post, //!< Request in post mode, usually to send data to a page
+ Head, //!< Request a page's header only
+ Put, //!< Request in put mode, useful for a REST API
+ Delete //!< Request in delete mode, useful for a REST API
};
////////////////////////////////////////////////////////////
@@ -178,12 +178,12 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- FieldTable m_fields; ///< Fields of the header associated to their value
- Method m_method; ///< Method to use for the request
- std::string m_uri; ///< Target URI of the request
- unsigned int m_majorVersion; ///< Major HTTP version
- unsigned int m_minorVersion; ///< Minor HTTP version
- std::string m_body; ///< Body of the request
+ FieldTable m_fields; //!< Fields of the header associated to their value
+ Method m_method; //!< Method to use for the request
+ std::string m_uri; //!< Target URI of the request
+ unsigned int m_majorVersion; //!< Major HTTP version
+ unsigned int m_minorVersion; //!< Minor HTTP version
+ std::string m_body; //!< Body of the request
};
////////////////////////////////////////////////////////////
@@ -201,37 +201,37 @@ public:
enum Status
{
// 2xx: success
- Ok = 200, ///< Most common code returned when operation was successful
- Created = 201, ///< The resource has successfully been created
- Accepted = 202, ///< The request has been accepted, but will be processed later by the server
- NoContent = 204, ///< The server didn't send any data in return
- ResetContent = 205, ///< The server informs the client that it should clear the view (form) that caused the request to be sent
- PartialContent = 206, ///< The server has sent a part of the resource, as a response to a partial GET request
+ Ok = 200, //!< Most common code returned when operation was successful
+ Created = 201, //!< The resource has successfully been created
+ Accepted = 202, //!< The request has been accepted, but will be processed later by the server
+ NoContent = 204, //!< The server didn't send any data in return
+ ResetContent = 205, //!< The server informs the client that it should clear the view (form) that caused the request to be sent
+ PartialContent = 206, //!< The server has sent a part of the resource, as a response to a partial GET request
// 3xx: redirection
- MultipleChoices = 300, ///< The requested page can be accessed from several locations
- MovedPermanently = 301, ///< The requested page has permanently moved to a new location
- MovedTemporarily = 302, ///< The requested page has temporarily moved to a new location
- NotModified = 304, ///< For conditional requests, means the requested page hasn't changed and doesn't need to be refreshed
+ MultipleChoices = 300, //!< The requested page can be accessed from several locations
+ MovedPermanently = 301, //!< The requested page has permanently moved to a new location
+ MovedTemporarily = 302, //!< The requested page has temporarily moved to a new location
+ NotModified = 304, //!< For conditional requests, means the requested page hasn't changed and doesn't need to be refreshed
// 4xx: client error
- BadRequest = 400, ///< The server couldn't understand the request (syntax error)
- Unauthorized = 401, ///< The requested page needs an authentication to be accessed
- Forbidden = 403, ///< The requested page cannot be accessed at all, even with authentication
- NotFound = 404, ///< The requested page doesn't exist
- RangeNotSatisfiable = 407, ///< The server can't satisfy the partial GET request (with a "Range" header field)
+ BadRequest = 400, //!< The server couldn't understand the request (syntax error)
+ Unauthorized = 401, //!< The requested page needs an authentication to be accessed
+ Forbidden = 403, //!< The requested page cannot be accessed at all, even with authentication
+ NotFound = 404, //!< The requested page doesn't exist
+ RangeNotSatisfiable = 407, //!< The server can't satisfy the partial GET request (with a "Range" header field)
// 5xx: server error
- InternalServerError = 500, ///< The server encountered an unexpected error
- NotImplemented = 501, ///< The server doesn't implement a requested feature
- BadGateway = 502, ///< The gateway server has received an error from the source server
- ServiceNotAvailable = 503, ///< The server is temporarily unavailable (overloaded, in maintenance, ...)
- GatewayTimeout = 504, ///< The gateway server couldn't receive a response from the source server
- VersionNotSupported = 505, ///< The server doesn't support the requested HTTP version
+ InternalServerError = 500, //!< The server encountered an unexpected error
+ NotImplemented = 501, //!< The server doesn't implement a requested feature
+ BadGateway = 502, //!< The gateway server has received an error from the source server
+ ServiceNotAvailable = 503, //!< The server is temporarily unavailable (overloaded, in maintenance, ...)
+ GatewayTimeout = 504, //!< The gateway server couldn't receive a response from the source server
+ VersionNotSupported = 505, //!< The server doesn't support the requested HTTP version
// 10xx: SFML custom codes
- InvalidResponse = 1000, ///< Response is not a valid HTTP one
- ConnectionFailed = 1001 ///< Connection with server failed
+ InvalidResponse = 1000, //!< Response is not a valid HTTP one
+ ConnectionFailed = 1001 //!< Connection with server failed
};
////////////////////////////////////////////////////////////
@@ -338,11 +338,11 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- FieldTable m_fields; ///< Fields of the header
- Status m_status; ///< Status code
- unsigned int m_majorVersion; ///< Major HTTP version
- unsigned int m_minorVersion; ///< Minor HTTP version
- std::string m_body; ///< Body of the response
+ FieldTable m_fields; //!< Fields of the header
+ Status m_status; //!< Status code
+ unsigned int m_majorVersion; //!< Major HTTP version
+ unsigned int m_minorVersion; //!< Minor HTTP version
+ std::string m_body; //!< Body of the response
};
////////////////////////////////////////////////////////////
@@ -409,10 +409,10 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- TcpSocket m_connection; ///< Connection to the host
- IpAddress m_host; ///< Web host address
- std::string m_hostName; ///< Web host name
- unsigned short m_port; ///< Port used for connection with host
+ TcpSocket m_connection; //!< Connection to the host
+ IpAddress m_host; //!< Web host address
+ std::string m_hostName; //!< Web host name
+ unsigned short m_port; //!< Port used for connection with host
};
} // namespace sf
diff --git a/include/SFML/Network/IpAddress.hpp b/include/SFML/Network/IpAddress.hpp
index 5065cd7c..b497b245 100644
--- a/include/SFML/Network/IpAddress.hpp
+++ b/include/SFML/Network/IpAddress.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -181,10 +181,10 @@ public:
////////////////////////////////////////////////////////////
// Static member data
////////////////////////////////////////////////////////////
- static const IpAddress None; ///< Value representing an empty/invalid address
- static const IpAddress Any; ///< Value representing any address (0.0.0.0)
- static const IpAddress LocalHost; ///< The "localhost" address (for connecting a computer to itself locally)
- static const IpAddress Broadcast; ///< The "broadcast" address (for sending UDP messages to everyone on a local network)
+ static const IpAddress None; //!< Value representing an empty/invalid address
+ static const IpAddress Any; //!< Value representing any address (0.0.0.0)
+ static const IpAddress LocalHost; //!< The "localhost" address (for connecting a computer to itself locally)
+ static const IpAddress Broadcast; //!< The "broadcast" address (for sending UDP messages to everyone on a local network)
private:
@@ -201,8 +201,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Uint32 m_address; ///< Address stored as an unsigned 32 bits integer
- bool m_valid; ///< Is the address valid?
+ Uint32 m_address; //!< Address stored as an unsigned 32 bits integer
+ bool m_valid; //!< Is the address valid?
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Network/Packet.hpp b/include/SFML/Network/Packet.hpp
index c3cf945e..db9a797e 100644
--- a/include/SFML/Network/Packet.hpp
+++ b/include/SFML/Network/Packet.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -72,10 +72,23 @@ public:
/// \param sizeInBytes Number of bytes to append
///
/// \see clear
+ /// \see getReadPosition
///
////////////////////////////////////////////////////////////
void append(const void* data, std::size_t sizeInBytes);
+ ////////////////////////////////////////////////////////////
+ /// \brief Get the current reading position in the packet
+ ///
+ /// The next read operation will read data from this position
+ ///
+ /// \return The byte offset of the current read position
+ ///
+ /// \see append
+ ///
+ ////////////////////////////////////////////////////////////
+ std::size_t getReadPosition() const;
+
////////////////////////////////////////////////////////////
/// \brief Clear the packet
///
@@ -400,10 +413,10 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::vector m_data; ///< Data stored in the packet
- std::size_t m_readPos; ///< Current reading position in the packet
- std::size_t m_sendPos; ///< Current send position in the packet (for handling partial sends)
- bool m_isValid; ///< Reading state of the packet
+ std::vector m_data; //!< Data stored in the packet
+ std::size_t m_readPos; //!< Current reading position in the packet
+ std::size_t m_sendPos; //!< Current send position in the packet (for handling partial sends)
+ bool m_isValid; //!< Reading state of the packet
};
} // namespace sf
diff --git a/include/SFML/Network/Socket.hpp b/include/SFML/Network/Socket.hpp
index 9f09c0d5..9ebb930b 100644
--- a/include/SFML/Network/Socket.hpp
+++ b/include/SFML/Network/Socket.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -52,11 +52,11 @@ public:
////////////////////////////////////////////////////////////
enum Status
{
- Done, ///< The socket has sent / received the data
- NotReady, ///< The socket is not ready to send / receive data yet
- Partial, ///< The socket sent a part of the data
- Disconnected, ///< The TCP socket has been disconnected
- Error ///< An unexpected error happened
+ Done, //!< The socket has sent / received the data
+ NotReady, //!< The socket is not ready to send / receive data yet
+ Partial, //!< The socket sent a part of the data
+ Disconnected, //!< The TCP socket has been disconnected
+ Error //!< An unexpected error happened
};
////////////////////////////////////////////////////////////
@@ -65,7 +65,7 @@ public:
////////////////////////////////////////////////////////////
enum
{
- AnyPort = 0 ///< Special value that tells the system to pick any available port
+ AnyPort = 0 //!< Special value that tells the system to pick any available port
};
public:
@@ -113,8 +113,8 @@ protected:
////////////////////////////////////////////////////////////
enum Type
{
- Tcp, ///< TCP protocol
- Udp ///< UDP protocol
+ Tcp, //!< TCP protocol
+ Udp //!< UDP protocol
};
////////////////////////////////////////////////////////////
@@ -173,9 +173,9 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Type m_type; ///< Type of the socket (TCP or UDP)
- SocketHandle m_socket; ///< Socket descriptor
- bool m_isBlocking; ///< Current blocking mode of the socket
+ Type m_type; //!< Type of the socket (TCP or UDP)
+ SocketHandle m_socket; //!< Socket descriptor
+ bool m_isBlocking; //!< Current blocking mode of the socket
};
} // namespace sf
diff --git a/include/SFML/Network/SocketHandle.hpp b/include/SFML/Network/SocketHandle.hpp
index 1dd13095..688ea0bf 100644
--- a/include/SFML/Network/SocketHandle.hpp
+++ b/include/SFML/Network/SocketHandle.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Network/SocketSelector.hpp b/include/SFML/Network/SocketSelector.hpp
index 3017d08a..332f0724 100644
--- a/include/SFML/Network/SocketSelector.hpp
+++ b/include/SFML/Network/SocketSelector.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -158,7 +158,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- SocketSelectorImpl* m_impl; ///< Opaque pointer to the implementation (which requires OS-specific types)
+ SocketSelectorImpl* m_impl; //!< Opaque pointer to the implementation (which requires OS-specific types)
};
} // namespace sf
diff --git a/include/SFML/Network/TcpListener.hpp b/include/SFML/Network/TcpListener.hpp
index 1f99f6d1..d0bdad40 100644
--- a/include/SFML/Network/TcpListener.hpp
+++ b/include/SFML/Network/TcpListener.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -74,6 +74,10 @@ public:
/// function is called, it will stop listening on the old
/// port before starting to listen on the new port.
///
+ /// When providing sf::Socket::AnyPort as port, the listener
+ /// will request an available port from the system.
+ /// The chosen port can be retrieved by calling getLocalPort().
+ ///
/// \param port Port to listen on for incoming connection attempts
/// \param address Address of the interface to listen on
///
diff --git a/include/SFML/Network/TcpSocket.hpp b/include/SFML/Network/TcpSocket.hpp
index 7ab0bff1..5778068a 100644
--- a/include/SFML/Network/TcpSocket.hpp
+++ b/include/SFML/Network/TcpSocket.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -220,15 +220,15 @@ private:
{
PendingPacket();
- Uint32 Size; ///< Data of packet size
- std::size_t SizeReceived; ///< Number of size bytes received so far
- std::vector Data; ///< Data of the packet
+ Uint32 Size; //!< Data of packet size
+ std::size_t SizeReceived; //!< Number of size bytes received so far
+ std::vector Data; //!< Data of the packet
};
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- PendingPacket m_pendingPacket; ///< Temporary data of the packet currently being received
+ PendingPacket m_pendingPacket; //!< Temporary data of the packet currently being received
};
} // namespace sf
diff --git a/include/SFML/Network/UdpSocket.hpp b/include/SFML/Network/UdpSocket.hpp
index 8e395886..14176f8e 100644
--- a/include/SFML/Network/UdpSocket.hpp
+++ b/include/SFML/Network/UdpSocket.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -51,7 +51,7 @@ public:
////////////////////////////////////////////////////////////
enum
{
- MaxDatagramSize = 65507 ///< The maximum number of bytes that can be sent in a single UDP datagram
+ MaxDatagramSize = 65507 //!< The maximum number of bytes that can be sent in a single UDP datagram
};
////////////////////////////////////////////////////////////
@@ -78,9 +78,10 @@ public:
///
/// Binding the socket to a port is necessary for being
/// able to receive data on that port.
- /// You can use the special value Socket::AnyPort to tell the
- /// system to automatically pick an available port, and then
- /// call getLocalPort to retrieve the chosen port.
+ ///
+ /// When providing sf::Socket::AnyPort as port, the listener
+ /// will request an available port from the system.
+ /// The chosen port can be retrieved by calling getLocalPort().
///
/// Since the socket can only be bound to a single port at
/// any given moment, if it is already bound when this
@@ -193,7 +194,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::vector m_buffer; ///< Temporary buffer holding the received data in Receive(Packet)
+ std::vector m_buffer; //!< Temporary buffer holding the received data in Receive(Packet)
};
} // namespace sf
diff --git a/include/SFML/OpenGL.hpp b/include/SFML/OpenGL.hpp
index cc48a483..45a3ac3d 100644
--- a/include/SFML/OpenGL.hpp
+++ b/include/SFML/OpenGL.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System.hpp b/include/SFML/System.hpp
index 37dff6bb..3c82226b 100644
--- a/include/SFML/System.hpp
+++ b/include/SFML/System.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Clock.hpp b/include/SFML/System/Clock.hpp
index 5475123e..21503477 100644
--- a/include/SFML/System/Clock.hpp
+++ b/include/SFML/System/Clock.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -78,7 +78,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Time m_startTime; ///< Time of last reset, in microseconds
+ Time m_startTime; //!< Time of last reset, in microseconds
};
} // namespace sf
diff --git a/include/SFML/System/Err.hpp b/include/SFML/System/Err.hpp
index 37bf1388..9ad1b29c 100644
--- a/include/SFML/System/Err.hpp
+++ b/include/SFML/System/Err.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Export.hpp b/include/SFML/System/Export.hpp
index 39dfd20b..b9691eec 100644
--- a/include/SFML/System/Export.hpp
+++ b/include/SFML/System/Export.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/FileInputStream.hpp b/include/SFML/System/FileInputStream.hpp
index 2c816b8f..d46be628 100644
--- a/include/SFML/System/FileInputStream.hpp
+++ b/include/SFML/System/FileInputStream.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -125,7 +125,7 @@ private:
#ifdef SFML_SYSTEM_ANDROID
priv::ResourceStream* m_file;
#else
- std::FILE* m_file; ///< stdio file stream
+ std::FILE* m_file; //!< stdio file stream
#endif
};
diff --git a/include/SFML/System/InputStream.hpp b/include/SFML/System/InputStream.hpp
index a4cb52ee..28022eca 100644
--- a/include/SFML/System/InputStream.hpp
+++ b/include/SFML/System/InputStream.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Lock.hpp b/include/SFML/System/Lock.hpp
index 9dc643ee..8667d144 100644
--- a/include/SFML/System/Lock.hpp
+++ b/include/SFML/System/Lock.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -67,7 +67,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Mutex& m_mutex; ///< Mutex to lock / unlock
+ Mutex& m_mutex; //!< Mutex to lock / unlock
};
} // namespace sf
diff --git a/include/SFML/System/MemoryInputStream.hpp b/include/SFML/System/MemoryInputStream.hpp
index 195d13a5..15cf38d9 100644
--- a/include/SFML/System/MemoryInputStream.hpp
+++ b/include/SFML/System/MemoryInputStream.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -104,9 +104,9 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- const char* m_data; ///< Pointer to the data in memory
- Int64 m_size; ///< Total size of the data
- Int64 m_offset; ///< Current reading position
+ const char* m_data; //!< Pointer to the data in memory
+ Int64 m_size; //!< Total size of the data
+ Int64 m_offset; //!< Current reading position
};
} // namespace sf
diff --git a/include/SFML/System/Mutex.hpp b/include/SFML/System/Mutex.hpp
index ceeea82d..34610c30 100644
--- a/include/SFML/System/Mutex.hpp
+++ b/include/SFML/System/Mutex.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -85,7 +85,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::MutexImpl* m_mutexImpl; ///< OS-specific implementation
+ priv::MutexImpl* m_mutexImpl; //!< OS-specific implementation
};
} // namespace sf
diff --git a/include/SFML/System/NativeActivity.hpp b/include/SFML/System/NativeActivity.hpp
index 6f5437eb..25609b5c 100644
--- a/include/SFML/System/NativeActivity.hpp
+++ b/include/SFML/System/NativeActivity.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/NonCopyable.hpp b/include/SFML/System/NonCopyable.hpp
index 1115ce2c..c5b42c8c 100644
--- a/include/SFML/System/NonCopyable.hpp
+++ b/include/SFML/System/NonCopyable.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Sleep.hpp b/include/SFML/System/Sleep.hpp
index aa3bc3a7..98668651 100644
--- a/include/SFML/System/Sleep.hpp
+++ b/include/SFML/System/Sleep.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/String.hpp b/include/SFML/System/String.hpp
index 0ecf9399..970105dc 100644
--- a/include/SFML/System/String.hpp
+++ b/include/SFML/System/String.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -49,13 +49,13 @@ public:
////////////////////////////////////////////////////////////
// Types
////////////////////////////////////////////////////////////
- typedef std::basic_string::iterator Iterator; ///< Iterator type
- typedef std::basic_string::const_iterator ConstIterator; ///< Read-only iterator type
+ typedef std::basic_string::iterator Iterator; //!< Iterator type
+ typedef std::basic_string::const_iterator ConstIterator; //!< Read-only iterator type
////////////////////////////////////////////////////////////
// Static member data
////////////////////////////////////////////////////////////
- static const std::size_t InvalidPos; ///< Represents an invalid position in the string
+ static const std::size_t InvalidPos; //!< Represents an invalid position in the string
////////////////////////////////////////////////////////////
/// \brief Default constructor
@@ -524,7 +524,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::basic_string m_string; ///< Internal string of UTF-32 characters
+ std::basic_string m_string; //!< Internal string of UTF-32 characters
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/System/String.inl b/include/SFML/System/String.inl
index 85915d82..0f3a890b 100644
--- a/include/SFML/System/String.inl
+++ b/include/SFML/System/String.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Thread.hpp b/include/SFML/System/Thread.hpp
index 59e3c662..ead09e84 100644
--- a/include/SFML/System/Thread.hpp
+++ b/include/SFML/System/Thread.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -186,8 +186,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::ThreadImpl* m_impl; ///< OS-specific implementation of the thread
- priv::ThreadFunc* m_entryPoint; ///< Abstraction of the function to run
+ priv::ThreadImpl* m_impl; //!< OS-specific implementation of the thread
+ priv::ThreadFunc* m_entryPoint; //!< Abstraction of the function to run
};
#include
diff --git a/include/SFML/System/Thread.inl b/include/SFML/System/Thread.inl
index 1d40c54d..55976e86 100644
--- a/include/SFML/System/Thread.inl
+++ b/include/SFML/System/Thread.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/ThreadLocal.hpp b/include/SFML/System/ThreadLocal.hpp
index d79a0575..065f29c2 100644
--- a/include/SFML/System/ThreadLocal.hpp
+++ b/include/SFML/System/ThreadLocal.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -83,7 +83,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::ThreadLocalImpl* m_impl; ///< Pointer to the OS specific implementation
+ priv::ThreadLocalImpl* m_impl; //!< Pointer to the OS specific implementation
};
} // namespace sf
diff --git a/include/SFML/System/ThreadLocalPtr.hpp b/include/SFML/System/ThreadLocalPtr.hpp
index 549ffb0d..a6ecd9de 100644
--- a/include/SFML/System/ThreadLocalPtr.hpp
+++ b/include/SFML/System/ThreadLocalPtr.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/ThreadLocalPtr.inl b/include/SFML/System/ThreadLocalPtr.inl
index 14e453e9..f76c77f8 100644
--- a/include/SFML/System/ThreadLocalPtr.inl
+++ b/include/SFML/System/ThreadLocalPtr.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Time.hpp b/include/SFML/System/Time.hpp
index 98968a91..1478730c 100644
--- a/include/SFML/System/Time.hpp
+++ b/include/SFML/System/Time.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -82,7 +82,7 @@ public:
////////////////////////////////////////////////////////////
// Static member data
////////////////////////////////////////////////////////////
- static const Time Zero; ///< Predefined "zero" time value
+ static const Time Zero; //!< Predefined "zero" time value
private:
@@ -106,7 +106,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- Int64 m_microseconds; ///< Time value stored as microseconds
+ Int64 m_microseconds; //!< Time value stored as microseconds
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/System/Utf.hpp b/include/SFML/System/Utf.hpp
index 1452d3d5..af567531 100644
--- a/include/SFML/System/Utf.hpp
+++ b/include/SFML/System/Utf.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Utf.inl b/include/SFML/System/Utf.inl
index 1fed3a00..d1ea73de 100644
--- a/include/SFML/System/Utf.inl
+++ b/include/SFML/System/Utf.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Vector2.hpp b/include/SFML/System/Vector2.hpp
index 1eca0270..429e649f 100644
--- a/include/SFML/System/Vector2.hpp
+++ b/include/SFML/System/Vector2.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -72,8 +72,8 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- T x; ///< X coordinate of the vector
- T y; ///< Y coordinate of the vector
+ T x; //!< X coordinate of the vector
+ T y; //!< Y coordinate of the vector
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/System/Vector2.inl b/include/SFML/System/Vector2.inl
index 2faee862..848395b3 100644
--- a/include/SFML/System/Vector2.inl
+++ b/include/SFML/System/Vector2.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/System/Vector3.hpp b/include/SFML/System/Vector3.hpp
index cac24c24..08220c9f 100644
--- a/include/SFML/System/Vector3.hpp
+++ b/include/SFML/System/Vector3.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -73,9 +73,9 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- T x; ///< X coordinate of the vector
- T y; ///< Y coordinate of the vector
- T z; ///< Z coordinate of the vector
+ T x; //!< X coordinate of the vector
+ T y; //!< Y coordinate of the vector
+ T z; //!< Z coordinate of the vector
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/System/Vector3.inl b/include/SFML/System/Vector3.inl
index f139dcde..852c6dbb 100644
--- a/include/SFML/System/Vector3.inl
+++ b/include/SFML/System/Vector3.inl
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Window.hpp b/include/SFML/Window.hpp
index da70c3ce..e3667b01 100644
--- a/include/SFML/Window.hpp
+++ b/include/SFML/Window.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Window/Clipboard.hpp b/include/SFML/Window/Clipboard.hpp
index b7c1cd06..68a37973 100644
--- a/include/SFML/Window/Clipboard.hpp
+++ b/include/SFML/Window/Clipboard.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Window/Context.hpp b/include/SFML/Window/Context.hpp
index 00418e5e..7ef9b9a1 100644
--- a/include/SFML/Window/Context.hpp
+++ b/include/SFML/Window/Context.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -150,7 +150,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::GlContext* m_context; ///< Internal OpenGL context
+ priv::GlContext* m_context; //!< Internal OpenGL context
};
} // namespace sf
diff --git a/include/SFML/Window/ContextSettings.hpp b/include/SFML/Window/ContextSettings.hpp
index 91c0f7cd..d2d84385 100644
--- a/include/SFML/Window/ContextSettings.hpp
+++ b/include/SFML/Window/ContextSettings.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -42,9 +42,9 @@ struct ContextSettings
////////////////////////////////////////////////////////////
enum Attribute
{
- Default = 0, ///< Non-debug, compatibility context (this and the core attribute are mutually exclusive)
- Core = 1 << 0, ///< Core attribute
- Debug = 1 << 2 ///< Debug attribute
+ Default = 0, //!< Non-debug, compatibility context (this and the core attribute are mutually exclusive)
+ Core = 1 << 0, //!< Core attribute
+ Debug = 1 << 2 //!< Debug attribute
};
////////////////////////////////////////////////////////////
@@ -73,13 +73,13 @@ struct ContextSettings
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- unsigned int depthBits; ///< Bits of the depth buffer
- unsigned int stencilBits; ///< Bits of the stencil buffer
- unsigned int antialiasingLevel; ///< Level of antialiasing
- unsigned int majorVersion; ///< Major number of the context version to create
- unsigned int minorVersion; ///< Minor number of the context version to create
- Uint32 attributeFlags; ///< The attribute flags to create the context with
- bool sRgbCapable; ///< Whether the context framebuffer is sRGB capable
+ unsigned int depthBits; //!< Bits of the depth buffer
+ unsigned int stencilBits; //!< Bits of the stencil buffer
+ unsigned int antialiasingLevel; //!< Level of antialiasing
+ unsigned int majorVersion; //!< Major number of the context version to create
+ unsigned int minorVersion; //!< Minor number of the context version to create
+ Uint32 attributeFlags; //!< The attribute flags to create the context with
+ bool sRgbCapable; //!< Whether the context framebuffer is sRGB capable
};
} // namespace sf
diff --git a/include/SFML/Window/Cursor.hpp b/include/SFML/Window/Cursor.hpp
index da6b15b3..ea29c504 100644
--- a/include/SFML/Window/Cursor.hpp
+++ b/include/SFML/Window/Cursor.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -75,19 +75,19 @@ public:
////////////////////////////////////////////////////////////
enum Type
{
- Arrow, ///< Arrow cursor (default)
- ArrowWait, ///< Busy arrow cursor
- Wait, ///< Busy cursor
- Text, ///< I-beam, cursor when hovering over a field allowing text entry
- Hand, ///< Pointing hand cursor
- SizeHorizontal, ///< Horizontal double arrow cursor
- SizeVertical, ///< Vertical double arrow cursor
- SizeTopLeftBottomRight, ///< Double arrow cursor going from top-left to bottom-right
- SizeBottomLeftTopRight, ///< Double arrow cursor going from bottom-left to top-right
- SizeAll, ///< Combination of SizeHorizontal and SizeVertical
- Cross, ///< Crosshair cursor
- Help, ///< Help cursor
- NotAllowed ///< Action not allowed cursor
+ Arrow, //!< Arrow cursor (default)
+ ArrowWait, //!< Busy arrow cursor
+ Wait, //!< Busy cursor
+ Text, //!< I-beam, cursor when hovering over a field allowing text entry
+ Hand, //!< Pointing hand cursor
+ SizeHorizontal, //!< Horizontal double arrow cursor
+ SizeVertical, //!< Vertical double arrow cursor
+ SizeTopLeftBottomRight, //!< Double arrow cursor going from top-left to bottom-right
+ SizeBottomLeftTopRight, //!< Double arrow cursor going from bottom-left to top-right
+ SizeAll, //!< Combination of SizeHorizontal and SizeVertical
+ Cross, //!< Crosshair cursor
+ Help, //!< Help cursor
+ NotAllowed //!< Action not allowed cursor
};
public:
@@ -129,7 +129,8 @@ public:
/// position is. Any mouse actions that are performed will
/// return the window/screen location of the hotspot.
///
- /// \warning On Unix, the pixels are mapped into a monochrome
+ /// \warning On Unix platforms which do not support colored
+ /// cursors, the pixels are mapped into a monochrome
/// bitmap: pixels with an alpha channel to 0 are
/// transparent, black if the RGB channel are close
/// to zero, and white otherwise.
@@ -179,7 +180,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::CursorImpl* m_impl; ///< Platform-specific implementation of the cursor
+ priv::CursorImpl* m_impl; //!< Platform-specific implementation of the cursor
};
} // namespace sf
diff --git a/include/SFML/Window/Event.hpp b/include/SFML/Window/Event.hpp
index 955b1073..2b7c8dcb 100644
--- a/include/SFML/Window/Event.hpp
+++ b/include/SFML/Window/Event.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -51,8 +51,8 @@ public:
////////////////////////////////////////////////////////////
struct SizeEvent
{
- unsigned int width; ///< New width, in pixels
- unsigned int height; ///< New height, in pixels
+ unsigned int width; //!< New width, in pixels
+ unsigned int height; //!< New height, in pixels
};
////////////////////////////////////////////////////////////
@@ -61,11 +61,11 @@ public:
////////////////////////////////////////////////////////////
struct KeyEvent
{
- Keyboard::Key code; ///< Code of the key that has been pressed
- bool alt; ///< Is the Alt key pressed?
- bool control; ///< Is the Control key pressed?
- bool shift; ///< Is the Shift key pressed?
- bool system; ///< Is the System key pressed?
+ Keyboard::Key code; //!< Code of the key that has been pressed
+ bool alt; //!< Is the Alt key pressed?
+ bool control; //!< Is the Control key pressed?
+ bool shift; //!< Is the Shift key pressed?
+ bool system; //!< Is the System key pressed?
};
////////////////////////////////////////////////////////////
@@ -74,7 +74,7 @@ public:
////////////////////////////////////////////////////////////
struct TextEvent
{
- Uint32 unicode; ///< UTF-32 Unicode value of the character
+ Uint32 unicode; //!< UTF-32 Unicode value of the character
};
////////////////////////////////////////////////////////////
@@ -83,8 +83,8 @@ public:
////////////////////////////////////////////////////////////
struct MouseMoveEvent
{
- int x; ///< X position of the mouse pointer, relative to the left of the owner window
- int y; ///< Y position of the mouse pointer, relative to the top of the owner window
+ int x; //!< X position of the mouse pointer, relative to the left of the owner window
+ int y; //!< Y position of the mouse pointer, relative to the top of the owner window
};
////////////////////////////////////////////////////////////
@@ -94,9 +94,9 @@ public:
////////////////////////////////////////////////////////////
struct MouseButtonEvent
{
- Mouse::Button button; ///< Code of the button that has been pressed
- int x; ///< X position of the mouse pointer, relative to the left of the owner window
- int y; ///< Y position of the mouse pointer, relative to the top of the owner window
+ Mouse::Button button; //!< Code of the button that has been pressed
+ int x; //!< X position of the mouse pointer, relative to the left of the owner window
+ int y; //!< Y position of the mouse pointer, relative to the top of the owner window
};
////////////////////////////////////////////////////////////
@@ -108,9 +108,9 @@ public:
////////////////////////////////////////////////////////////
struct MouseWheelEvent
{
- int delta; ///< Number of ticks the wheel has moved (positive is up, negative is down)
- int x; ///< X position of the mouse pointer, relative to the left of the owner window
- int y; ///< Y position of the mouse pointer, relative to the top of the owner window
+ int delta; //!< Number of ticks the wheel has moved (positive is up, negative is down)
+ int x; //!< X position of the mouse pointer, relative to the left of the owner window
+ int y; //!< Y position of the mouse pointer, relative to the top of the owner window
};
////////////////////////////////////////////////////////////
@@ -119,10 +119,10 @@ public:
////////////////////////////////////////////////////////////
struct MouseWheelScrollEvent
{
- Mouse::Wheel wheel; ///< Which wheel (for mice with multiple ones)
- float delta; ///< Wheel offset (positive is up/left, negative is down/right). High-precision mice may use non-integral offsets.
- int x; ///< X position of the mouse pointer, relative to the left of the owner window
- int y; ///< Y position of the mouse pointer, relative to the top of the owner window
+ Mouse::Wheel wheel; //!< Which wheel (for mice with multiple ones)
+ float delta; //!< Wheel offset (positive is up/left, negative is down/right). High-precision mice may use non-integral offsets.
+ int x; //!< X position of the mouse pointer, relative to the left of the owner window
+ int y; //!< Y position of the mouse pointer, relative to the top of the owner window
};
////////////////////////////////////////////////////////////
@@ -132,7 +132,7 @@ public:
////////////////////////////////////////////////////////////
struct JoystickConnectEvent
{
- unsigned int joystickId; ///< Index of the joystick (in range [0 .. Joystick::Count - 1])
+ unsigned int joystickId; //!< Index of the joystick (in range [0 .. Joystick::Count - 1])
};
////////////////////////////////////////////////////////////
@@ -141,9 +141,9 @@ public:
////////////////////////////////////////////////////////////
struct JoystickMoveEvent
{
- unsigned int joystickId; ///< Index of the joystick (in range [0 .. Joystick::Count - 1])
- Joystick::Axis axis; ///< Axis on which the joystick moved
- float position; ///< New position on the axis (in range [-100 .. 100])
+ unsigned int joystickId; //!< Index of the joystick (in range [0 .. Joystick::Count - 1])
+ Joystick::Axis axis; //!< Axis on which the joystick moved
+ float position; //!< New position on the axis (in range [-100 .. 100])
};
////////////////////////////////////////////////////////////
@@ -153,8 +153,8 @@ public:
////////////////////////////////////////////////////////////
struct JoystickButtonEvent
{
- unsigned int joystickId; ///< Index of the joystick (in range [0 .. Joystick::Count - 1])
- unsigned int button; ///< Index of the button that has been pressed (in range [0 .. Joystick::ButtonCount - 1])
+ unsigned int joystickId; //!< Index of the joystick (in range [0 .. Joystick::Count - 1])
+ unsigned int button; //!< Index of the button that has been pressed (in range [0 .. Joystick::ButtonCount - 1])
};
////////////////////////////////////////////////////////////
@@ -163,9 +163,9 @@ public:
////////////////////////////////////////////////////////////
struct TouchEvent
{
- unsigned int finger; ///< Index of the finger in case of multi-touch events
- int x; ///< X position of the touch, relative to the left of the owner window
- int y; ///< Y position of the touch, relative to the top of the owner window
+ unsigned int finger; //!< Index of the finger in case of multi-touch events
+ int x; //!< X position of the touch, relative to the left of the owner window
+ int y; //!< Y position of the touch, relative to the top of the owner window
};
////////////////////////////////////////////////////////////
@@ -174,10 +174,10 @@ public:
////////////////////////////////////////////////////////////
struct SensorEvent
{
- Sensor::Type type; ///< Type of the sensor
- float x; ///< Current value of the sensor on X axis
- float y; ///< Current value of the sensor on Y axis
- float z; ///< Current value of the sensor on Z axis
+ Sensor::Type type; //!< Type of the sensor
+ float x; //!< Current value of the sensor on X axis
+ float y; //!< Current value of the sensor on Y axis
+ float z; //!< Current value of the sensor on Z axis
};
////////////////////////////////////////////////////////////
@@ -186,52 +186,52 @@ public:
////////////////////////////////////////////////////////////
enum EventType
{
- Closed, ///< The window requested to be closed (no data)
- Resized, ///< The window was resized (data in event.size)
- LostFocus, ///< The window lost the focus (no data)
- GainedFocus, ///< The window gained the focus (no data)
- TextEntered, ///< A character was entered (data in event.text)
- KeyPressed, ///< A key was pressed (data in event.key)
- KeyReleased, ///< A key was released (data in event.key)
- MouseWheelMoved, ///< The mouse wheel was scrolled (data in event.mouseWheel) (deprecated)
- MouseWheelScrolled, ///< The mouse wheel was scrolled (data in event.mouseWheelScroll)
- MouseButtonPressed, ///< A mouse button was pressed (data in event.mouseButton)
- MouseButtonReleased, ///< A mouse button was released (data in event.mouseButton)
- MouseMoved, ///< The mouse cursor moved (data in event.mouseMove)
- MouseEntered, ///< The mouse cursor entered the area of the window (no data)
- MouseLeft, ///< The mouse cursor left the area of the window (no data)
- JoystickButtonPressed, ///< A joystick button was pressed (data in event.joystickButton)
- JoystickButtonReleased, ///< A joystick button was released (data in event.joystickButton)
- JoystickMoved, ///< The joystick moved along an axis (data in event.joystickMove)
- JoystickConnected, ///< A joystick was connected (data in event.joystickConnect)
- JoystickDisconnected, ///< A joystick was disconnected (data in event.joystickConnect)
- TouchBegan, ///< A touch event began (data in event.touch)
- TouchMoved, ///< A touch moved (data in event.touch)
- TouchEnded, ///< A touch event ended (data in event.touch)
- SensorChanged, ///< A sensor value changed (data in event.sensor)
+ Closed, //!< The window requested to be closed (no data)
+ Resized, //!< The window was resized (data in event.size)
+ LostFocus, //!< The window lost the focus (no data)
+ GainedFocus, //!< The window gained the focus (no data)
+ TextEntered, //!< A character was entered (data in event.text)
+ KeyPressed, //!< A key was pressed (data in event.key)
+ KeyReleased, //!< A key was released (data in event.key)
+ MouseWheelMoved, //!< The mouse wheel was scrolled (data in event.mouseWheel) (deprecated)
+ MouseWheelScrolled, //!< The mouse wheel was scrolled (data in event.mouseWheelScroll)
+ MouseButtonPressed, //!< A mouse button was pressed (data in event.mouseButton)
+ MouseButtonReleased, //!< A mouse button was released (data in event.mouseButton)
+ MouseMoved, //!< The mouse cursor moved (data in event.mouseMove)
+ MouseEntered, //!< The mouse cursor entered the area of the window (no data)
+ MouseLeft, //!< The mouse cursor left the area of the window (no data)
+ JoystickButtonPressed, //!< A joystick button was pressed (data in event.joystickButton)
+ JoystickButtonReleased, //!< A joystick button was released (data in event.joystickButton)
+ JoystickMoved, //!< The joystick moved along an axis (data in event.joystickMove)
+ JoystickConnected, //!< A joystick was connected (data in event.joystickConnect)
+ JoystickDisconnected, //!< A joystick was disconnected (data in event.joystickConnect)
+ TouchBegan, //!< A touch event began (data in event.touch)
+ TouchMoved, //!< A touch moved (data in event.touch)
+ TouchEnded, //!< A touch event ended (data in event.touch)
+ SensorChanged, //!< A sensor value changed (data in event.sensor)
- Count ///< Keep last -- the total number of event types
+ Count //!< Keep last -- the total number of event types
};
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- EventType type; ///< Type of the event
+ EventType type; //!< Type of the event
union
{
- SizeEvent size; ///< Size event parameters (Event::Resized)
- KeyEvent key; ///< Key event parameters (Event::KeyPressed, Event::KeyReleased)
- TextEvent text; ///< Text event parameters (Event::TextEntered)
- MouseMoveEvent mouseMove; ///< Mouse move event parameters (Event::MouseMoved)
- MouseButtonEvent mouseButton; ///< Mouse button event parameters (Event::MouseButtonPressed, Event::MouseButtonReleased)
- MouseWheelEvent mouseWheel; ///< Mouse wheel event parameters (Event::MouseWheelMoved) (deprecated)
- MouseWheelScrollEvent mouseWheelScroll; ///< Mouse wheel event parameters (Event::MouseWheelScrolled)
- JoystickMoveEvent joystickMove; ///< Joystick move event parameters (Event::JoystickMoved)
- JoystickButtonEvent joystickButton; ///< Joystick button event parameters (Event::JoystickButtonPressed, Event::JoystickButtonReleased)
- JoystickConnectEvent joystickConnect; ///< Joystick (dis)connect event parameters (Event::JoystickConnected, Event::JoystickDisconnected)
- TouchEvent touch; ///< Touch events parameters (Event::TouchBegan, Event::TouchMoved, Event::TouchEnded)
- SensorEvent sensor; ///< Sensor event parameters (Event::SensorChanged)
+ SizeEvent size; //!< Size event parameters (Event::Resized)
+ KeyEvent key; //!< Key event parameters (Event::KeyPressed, Event::KeyReleased)
+ TextEvent text; //!< Text event parameters (Event::TextEntered)
+ MouseMoveEvent mouseMove; //!< Mouse move event parameters (Event::MouseMoved)
+ MouseButtonEvent mouseButton; //!< Mouse button event parameters (Event::MouseButtonPressed, Event::MouseButtonReleased)
+ MouseWheelEvent mouseWheel; //!< Mouse wheel event parameters (Event::MouseWheelMoved) (deprecated)
+ MouseWheelScrollEvent mouseWheelScroll; //!< Mouse wheel event parameters (Event::MouseWheelScrolled)
+ JoystickMoveEvent joystickMove; //!< Joystick move event parameters (Event::JoystickMoved)
+ JoystickButtonEvent joystickButton; //!< Joystick button event parameters (Event::JoystickButtonPressed, Event::JoystickButtonReleased)
+ JoystickConnectEvent joystickConnect; //!< Joystick (dis)connect event parameters (Event::JoystickConnected, Event::JoystickDisconnected)
+ TouchEvent touch; //!< Touch events parameters (Event::TouchBegan, Event::TouchMoved, Event::TouchEnded)
+ SensorEvent sensor; //!< Sensor event parameters (Event::SensorChanged)
};
};
diff --git a/include/SFML/Window/Export.hpp b/include/SFML/Window/Export.hpp
index 5b198410..11f27b36 100644
--- a/include/SFML/Window/Export.hpp
+++ b/include/SFML/Window/Export.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Window/GlResource.hpp b/include/SFML/Window/GlResource.hpp
index 3d007fc5..223707e8 100644
--- a/include/SFML/Window/GlResource.hpp
+++ b/include/SFML/Window/GlResource.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Window/Joystick.hpp b/include/SFML/Window/Joystick.hpp
index 25ac8b6a..dd5454c3 100644
--- a/include/SFML/Window/Joystick.hpp
+++ b/include/SFML/Window/Joystick.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -48,9 +48,9 @@ public:
////////////////////////////////////////////////////////////
enum
{
- Count = 8, ///< Maximum number of supported joysticks
- ButtonCount = 32, ///< Maximum number of supported buttons
- AxisCount = 8 ///< Maximum number of supported axes
+ Count = 8, //!< Maximum number of supported joysticks
+ ButtonCount = 32, //!< Maximum number of supported buttons
+ AxisCount = 8 //!< Maximum number of supported axes
};
////////////////////////////////////////////////////////////
@@ -59,14 +59,14 @@ public:
////////////////////////////////////////////////////////////
enum Axis
{
- X, ///< The X axis
- Y, ///< The Y axis
- Z, ///< The Z axis
- R, ///< The R axis
- U, ///< The U axis
- V, ///< The V axis
- PovX, ///< The X axis of the point-of-view hat
- PovY ///< The Y axis of the point-of-view hat
+ X, //!< The X axis
+ Y, //!< The Y axis
+ Z, //!< The Z axis
+ R, //!< The R axis
+ U, //!< The U axis
+ V, //!< The V axis
+ PovX, //!< The X axis of the point-of-view hat
+ PovY //!< The Y axis of the point-of-view hat
};
////////////////////////////////////////////////////////////
@@ -77,9 +77,9 @@ public:
{
Identification();
- String name; ///< Name of the joystick
- unsigned int vendorId; ///< Manufacturer identifier
- unsigned int productId; ///< Product identifier
+ String name; //!< Name of the joystick
+ unsigned int vendorId; //!< Manufacturer identifier
+ unsigned int productId; //!< Product identifier
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Window/Keyboard.hpp b/include/SFML/Window/Keyboard.hpp
index 3d882542..0bbcd8ab 100644
--- a/include/SFML/Window/Keyboard.hpp
+++ b/include/SFML/Window/Keyboard.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -47,118 +47,118 @@ public:
////////////////////////////////////////////////////////////
enum Key
{
- Unknown = -1, ///< Unhandled key
- A = 0, ///< The A key
- B, ///< The B key
- C, ///< The C key
- D, ///< The D key
- E, ///< The E key
- F, ///< The F key
- G, ///< The G key
- H, ///< The H key
- I, ///< The I key
- J, ///< The J key
- K, ///< The K key
- L, ///< The L key
- M, ///< The M key
- N, ///< The N key
- O, ///< The O key
- P, ///< The P key
- Q, ///< The Q key
- R, ///< The R key
- S, ///< The S key
- T, ///< The T key
- U, ///< The U key
- V, ///< The V key
- W, ///< The W key
- X, ///< The X key
- Y, ///< The Y key
- Z, ///< The Z key
- Num0, ///< The 0 key
- Num1, ///< The 1 key
- Num2, ///< The 2 key
- Num3, ///< The 3 key
- Num4, ///< The 4 key
- Num5, ///< The 5 key
- Num6, ///< The 6 key
- Num7, ///< The 7 key
- Num8, ///< The 8 key
- Num9, ///< The 9 key
- Escape, ///< The Escape key
- LControl, ///< The left Control key
- LShift, ///< The left Shift key
- LAlt, ///< The left Alt key
- LSystem, ///< The left OS specific key: window (Windows and Linux), apple (MacOS X), ...
- RControl, ///< The right Control key
- RShift, ///< The right Shift key
- RAlt, ///< The right Alt key
- RSystem, ///< The right OS specific key: window (Windows and Linux), apple (MacOS X), ...
- Menu, ///< The Menu key
- LBracket, ///< The [ key
- RBracket, ///< The ] key
- Semicolon, ///< The ; key
- Comma, ///< The , key
- Period, ///< The . key
- Quote, ///< The ' key
- Slash, ///< The / key
- Backslash, ///< The \ key
- Tilde, ///< The ~ key
- Equal, ///< The = key
- Hyphen, ///< The - key (hyphen)
- Space, ///< The Space key
- Enter, ///< The Enter/Return keys
- Backspace, ///< The Backspace key
- Tab, ///< The Tabulation key
- PageUp, ///< The Page up key
- PageDown, ///< The Page down key
- End, ///< The End key
- Home, ///< The Home key
- Insert, ///< The Insert key
- Delete, ///< The Delete key
- Add, ///< The + key
- Subtract, ///< The - key (minus, usually from numpad)
- Multiply, ///< The * key
- Divide, ///< The / key
- Left, ///< Left arrow
- Right, ///< Right arrow
- Up, ///< Up arrow
- Down, ///< Down arrow
- Numpad0, ///< The numpad 0 key
- Numpad1, ///< The numpad 1 key
- Numpad2, ///< The numpad 2 key
- Numpad3, ///< The numpad 3 key
- Numpad4, ///< The numpad 4 key
- Numpad5, ///< The numpad 5 key
- Numpad6, ///< The numpad 6 key
- Numpad7, ///< The numpad 7 key
- Numpad8, ///< The numpad 8 key
- Numpad9, ///< The numpad 9 key
- F1, ///< The F1 key
- F2, ///< The F2 key
- F3, ///< The F3 key
- F4, ///< The F4 key
- F5, ///< The F5 key
- F6, ///< The F6 key
- F7, ///< The F7 key
- F8, ///< The F8 key
- F9, ///< The F9 key
- F10, ///< The F10 key
- F11, ///< The F11 key
- F12, ///< The F12 key
- F13, ///< The F13 key
- F14, ///< The F14 key
- F15, ///< The F15 key
- Pause, ///< The Pause key
+ Unknown = -1, //!< Unhandled key
+ A = 0, //!< The A key
+ B, //!< The B key
+ C, //!< The C key
+ D, //!< The D key
+ E, //!< The E key
+ F, //!< The F key
+ G, //!< The G key
+ H, //!< The H key
+ I, //!< The I key
+ J, //!< The J key
+ K, //!< The K key
+ L, //!< The L key
+ M, //!< The M key
+ N, //!< The N key
+ O, //!< The O key
+ P, //!< The P key
+ Q, //!< The Q key
+ R, //!< The R key
+ S, //!< The S key
+ T, //!< The T key
+ U, //!< The U key
+ V, //!< The V key
+ W, //!< The W key
+ X, //!< The X key
+ Y, //!< The Y key
+ Z, //!< The Z key
+ Num0, //!< The 0 key
+ Num1, //!< The 1 key
+ Num2, //!< The 2 key
+ Num3, //!< The 3 key
+ Num4, //!< The 4 key
+ Num5, //!< The 5 key
+ Num6, //!< The 6 key
+ Num7, //!< The 7 key
+ Num8, //!< The 8 key
+ Num9, //!< The 9 key
+ Escape, //!< The Escape key
+ LControl, //!< The left Control key
+ LShift, //!< The left Shift key
+ LAlt, //!< The left Alt key
+ LSystem, //!< The left OS specific key: window (Windows and Linux), apple (MacOS X), ...
+ RControl, //!< The right Control key
+ RShift, //!< The right Shift key
+ RAlt, //!< The right Alt key
+ RSystem, //!< The right OS specific key: window (Windows and Linux), apple (MacOS X), ...
+ Menu, //!< The Menu key
+ LBracket, //!< The [ key
+ RBracket, //!< The ] key
+ Semicolon, //!< The ; key
+ Comma, //!< The , key
+ Period, //!< The . key
+ Quote, //!< The ' key
+ Slash, //!< The / key
+ Backslash, //!< The \ key
+ Tilde, //!< The ~ key
+ Equal, //!< The = key
+ Hyphen, //!< The - key (hyphen)
+ Space, //!< The Space key
+ Enter, //!< The Enter/Return keys
+ Backspace, //!< The Backspace key
+ Tab, //!< The Tabulation key
+ PageUp, //!< The Page up key
+ PageDown, //!< The Page down key
+ End, //!< The End key
+ Home, //!< The Home key
+ Insert, //!< The Insert key
+ Delete, //!< The Delete key
+ Add, //!< The + key
+ Subtract, //!< The - key (minus, usually from numpad)
+ Multiply, //!< The * key
+ Divide, //!< The / key
+ Left, //!< Left arrow
+ Right, //!< Right arrow
+ Up, //!< Up arrow
+ Down, //!< Down arrow
+ Numpad0, //!< The numpad 0 key
+ Numpad1, //!< The numpad 1 key
+ Numpad2, //!< The numpad 2 key
+ Numpad3, //!< The numpad 3 key
+ Numpad4, //!< The numpad 4 key
+ Numpad5, //!< The numpad 5 key
+ Numpad6, //!< The numpad 6 key
+ Numpad7, //!< The numpad 7 key
+ Numpad8, //!< The numpad 8 key
+ Numpad9, //!< The numpad 9 key
+ F1, //!< The F1 key
+ F2, //!< The F2 key
+ F3, //!< The F3 key
+ F4, //!< The F4 key
+ F5, //!< The F5 key
+ F6, //!< The F6 key
+ F7, //!< The F7 key
+ F8, //!< The F8 key
+ F9, //!< The F9 key
+ F10, //!< The F10 key
+ F11, //!< The F11 key
+ F12, //!< The F12 key
+ F13, //!< The F13 key
+ F14, //!< The F14 key
+ F15, //!< The F15 key
+ Pause, //!< The Pause key
- KeyCount, ///< Keep last -- the total number of keyboard keys
+ KeyCount, //!< Keep last -- the total number of keyboard keys
// Deprecated values:
- Dash = Hyphen, ///< \deprecated Use Hyphen instead
- BackSpace = Backspace, ///< \deprecated Use Backspace instead
- BackSlash = Backslash, ///< \deprecated Use Backslash instead
- SemiColon = Semicolon, ///< \deprecated Use Semicolon instead
- Return = Enter ///< \deprecated Use Enter instead
+ Dash = Hyphen, //!< \deprecated Use Hyphen instead
+ BackSpace = Backspace, //!< \deprecated Use Backspace instead
+ BackSlash = Backslash, //!< \deprecated Use Backslash instead
+ SemiColon = Semicolon, //!< \deprecated Use Semicolon instead
+ Return = Enter //!< \deprecated Use Enter instead
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Window/Mouse.hpp b/include/SFML/Window/Mouse.hpp
index e5df9fbd..d2b7fefa 100644
--- a/include/SFML/Window/Mouse.hpp
+++ b/include/SFML/Window/Mouse.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -50,13 +50,13 @@ public:
////////////////////////////////////////////////////////////
enum Button
{
- Left, ///< The left mouse button
- Right, ///< The right mouse button
- Middle, ///< The middle (wheel) mouse button
- XButton1, ///< The first extra mouse button
- XButton2, ///< The second extra mouse button
+ Left, //!< The left mouse button
+ Right, //!< The right mouse button
+ Middle, //!< The middle (wheel) mouse button
+ XButton1, //!< The first extra mouse button
+ XButton2, //!< The second extra mouse button
- ButtonCount ///< Keep last -- the total number of mouse buttons
+ ButtonCount //!< Keep last -- the total number of mouse buttons
};
////////////////////////////////////////////////////////////
@@ -65,8 +65,8 @@ public:
////////////////////////////////////////////////////////////
enum Wheel
{
- VerticalWheel, ///< The vertical mouse wheel
- HorizontalWheel ///< The horizontal mouse wheel
+ VerticalWheel, //!< The vertical mouse wheel
+ HorizontalWheel //!< The horizontal mouse wheel
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Window/Sensor.hpp b/include/SFML/Window/Sensor.hpp
index 4f40e627..337bc7f4 100644
--- a/include/SFML/Window/Sensor.hpp
+++ b/include/SFML/Window/Sensor.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -49,14 +49,14 @@ public:
////////////////////////////////////////////////////////////
enum Type
{
- Accelerometer, ///< Measures the raw acceleration (m/s^2)
- Gyroscope, ///< Measures the raw rotation rates (degrees/s)
- Magnetometer, ///< Measures the ambient magnetic field (micro-teslas)
- Gravity, ///< Measures the direction and intensity of gravity, independent of device acceleration (m/s^2)
- UserAcceleration, ///< Measures the direction and intensity of device acceleration, independent of the gravity (m/s^2)
- Orientation, ///< Measures the absolute 3D orientation (degrees)
+ Accelerometer, //!< Measures the raw acceleration (m/s^2)
+ Gyroscope, //!< Measures the raw rotation rates (degrees/s)
+ Magnetometer, //!< Measures the ambient magnetic field (micro-teslas)
+ Gravity, //!< Measures the direction and intensity of gravity, independent of device acceleration (m/s^2)
+ UserAcceleration, //!< Measures the direction and intensity of device acceleration, independent of the gravity (m/s^2)
+ Orientation, //!< Measures the absolute 3D orientation (degrees)
- Count ///< Keep last -- the total number of sensor types
+ Count //!< Keep last -- the total number of sensor types
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Window/Touch.hpp b/include/SFML/Window/Touch.hpp
index fa64f390..bc9f72e1 100644
--- a/include/SFML/Window/Touch.hpp
+++ b/include/SFML/Window/Touch.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Window/VideoMode.hpp b/include/SFML/Window/VideoMode.hpp
index 03b1ee6a..d95ea49a 100644
--- a/include/SFML/Window/VideoMode.hpp
+++ b/include/SFML/Window/VideoMode.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -99,9 +99,9 @@ public:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- unsigned int width; ///< Video mode width, in pixels
- unsigned int height; ///< Video mode height, in pixels
- unsigned int bitsPerPixel; ///< Video mode pixel depth, in bits per pixels
+ unsigned int width; //!< Video mode width, in pixels
+ unsigned int height; //!< Video mode height, in pixels
+ unsigned int bitsPerPixel; //!< Video mode pixel depth, in bits per pixels
};
////////////////////////////////////////////////////////////
diff --git a/include/SFML/Window/Vulkan.hpp b/include/SFML/Window/Vulkan.hpp
index cd501a12..00ee911a 100644
--- a/include/SFML/Window/Vulkan.hpp
+++ b/include/SFML/Window/Vulkan.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Window/Window.hpp b/include/SFML/Window/Window.hpp
index 77728696..bcbe8725 100644
--- a/include/SFML/Window/Window.hpp
+++ b/include/SFML/Window/Window.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -276,9 +276,9 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::GlContext* m_context; ///< Platform-specific implementation of the OpenGL context
- Clock m_clock; ///< Clock for measuring the elapsed time between frames
- Time m_frameTimeLimit; ///< Current framerate limit
+ priv::GlContext* m_context; //!< Platform-specific implementation of the OpenGL context
+ Clock m_clock; //!< Clock for measuring the elapsed time between frames
+ Time m_frameTimeLimit; //!< Current framerate limit
};
} // namespace sf
diff --git a/include/SFML/Window/WindowBase.hpp b/include/SFML/Window/WindowBase.hpp
index 747b9058..d1d4ff98 100644
--- a/include/SFML/Window/WindowBase.hpp
+++ b/include/SFML/Window/WindowBase.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -470,8 +470,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- priv::WindowImpl* m_impl; ///< Platform-specific implementation of the window
- Vector2u m_size; ///< Current size of the window
+ priv::WindowImpl* m_impl; //!< Platform-specific implementation of the window
+ Vector2u m_size; //!< Current size of the window
};
} // namespace sf
diff --git a/include/SFML/Window/WindowHandle.hpp b/include/SFML/Window/WindowHandle.hpp
index c05d50be..624ca737 100644
--- a/include/SFML/Window/WindowHandle.hpp
+++ b/include/SFML/Window/WindowHandle.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/include/SFML/Window/WindowStyle.hpp b/include/SFML/Window/WindowStyle.hpp
index 5a0b7e85..ab611d29 100644
--- a/include/SFML/Window/WindowStyle.hpp
+++ b/include/SFML/Window/WindowStyle.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -37,13 +37,13 @@ namespace Style
////////////////////////////////////////////////////////////
enum
{
- None = 0, ///< No border / title bar (this flag and all others are mutually exclusive)
- Titlebar = 1 << 0, ///< Title bar + fixed border
- Resize = 1 << 1, ///< Title bar + resizable border + maximize button
- Close = 1 << 2, ///< Title bar + close button
- Fullscreen = 1 << 3, ///< Fullscreen mode (this flag and all others are mutually exclusive)
+ None = 0, //!< No border / title bar (this flag and all others are mutually exclusive)
+ Titlebar = 1 << 0, //!< Title bar + fixed border
+ Resize = 1 << 1, //!< Title bar + resizable border + maximize button
+ Close = 1 << 2, //!< Title bar + close button
+ Fullscreen = 1 << 3, //!< Fullscreen mode (this flag and all others are mutually exclusive)
- Default = Titlebar | Resize | Close ///< Default window style
+ Default = Titlebar | Resize | Close //!< Default window style
};
}
diff --git a/license.md b/license.md
index 9f6db1a9..1ae961a7 100644
--- a/license.md
+++ b/license.md
@@ -1,6 +1,6 @@
# SFML
-SFML - Copyright (C) 2007-2019 Laurent Gomila - laurent@sfml-dev.org
+SFML - Copyright (C) 2007-2020 Laurent Gomila - laurent@sfml-dev.org
This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/ALCheck.cpp b/src/SFML/Audio/ALCheck.cpp
index 8514cc98..a7873a0a 100644
--- a/src/SFML/Audio/ALCheck.cpp
+++ b/src/SFML/Audio/ALCheck.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/ALCheck.hpp b/src/SFML/Audio/ALCheck.hpp
index 963d271a..95259fb7 100644
--- a/src/SFML/Audio/ALCheck.hpp
+++ b/src/SFML/Audio/ALCheck.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/AlResource.cpp b/src/SFML/Audio/AlResource.cpp
index f59d36b4..42a4945f 100644
--- a/src/SFML/Audio/AlResource.cpp
+++ b/src/SFML/Audio/AlResource.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/AudioDevice.cpp b/src/SFML/Audio/AudioDevice.cpp
index e4ebc4b9..b9246dfd 100644
--- a/src/SFML/Audio/AudioDevice.cpp
+++ b/src/SFML/Audio/AudioDevice.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/AudioDevice.hpp b/src/SFML/Audio/AudioDevice.hpp
index af940217..a8bac26e 100644
--- a/src/SFML/Audio/AudioDevice.hpp
+++ b/src/SFML/Audio/AudioDevice.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/CMakeLists.txt b/src/SFML/Audio/CMakeLists.txt
index 420e13b5..ab97a37c 100644
--- a/src/SFML/Audio/CMakeLists.txt
+++ b/src/SFML/Audio/CMakeLists.txt
@@ -67,11 +67,11 @@ endif()
# find external libraries
sfml_find_package(OpenAL INCLUDE "OPENAL_INCLUDE_DIR" LINK "OPENAL_LIBRARY")
-sfml_find_package(Vorbis INCLUDE "VORBIS_INCLUDE_DIRS" LINK "VORBIS_LIBRARIES")
+sfml_find_package(VORBIS INCLUDE "VORBIS_INCLUDE_DIRS" LINK "VORBIS_LIBRARIES")
sfml_find_package(FLAC INCLUDE "FLAC_INCLUDE_DIR" LINK "FLAC_LIBRARY")
# avoids warnings in vorbisfile.h
-target_compile_definitions(Vorbis INTERFACE "OV_EXCLUDE_STATIC_CALLBACKS")
+target_compile_definitions(VORBIS INTERFACE "OV_EXCLUDE_STATIC_CALLBACKS")
target_compile_definitions(FLAC INTERFACE "FLAC__NO_DLL")
# define the sfml-audio target
@@ -87,4 +87,4 @@ endif()
target_link_libraries(sfml-audio
PUBLIC sfml-system
- PRIVATE Vorbis FLAC)
+ PRIVATE VORBIS FLAC)
diff --git a/src/SFML/Audio/InputSoundFile.cpp b/src/SFML/Audio/InputSoundFile.cpp
index 6d9da57c..cb8bed04 100644
--- a/src/SFML/Audio/InputSoundFile.cpp
+++ b/src/SFML/Audio/InputSoundFile.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/Listener.cpp b/src/SFML/Audio/Listener.cpp
index bbbece5e..477f0931 100644
--- a/src/SFML/Audio/Listener.cpp
+++ b/src/SFML/Audio/Listener.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/Music.cpp b/src/SFML/Audio/Music.cpp
index b8829d02..d711eff1 100644
--- a/src/SFML/Audio/Music.cpp
+++ b/src/SFML/Audio/Music.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/OutputSoundFile.cpp b/src/SFML/Audio/OutputSoundFile.cpp
index c6584352..ddaafcf0 100644
--- a/src/SFML/Audio/OutputSoundFile.cpp
+++ b/src/SFML/Audio/OutputSoundFile.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/Sound.cpp b/src/SFML/Audio/Sound.cpp
index 36e65849..505e9588 100644
--- a/src/SFML/Audio/Sound.cpp
+++ b/src/SFML/Audio/Sound.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundBuffer.cpp b/src/SFML/Audio/SoundBuffer.cpp
index dfd137ff..3c23920e 100644
--- a/src/SFML/Audio/SoundBuffer.cpp
+++ b/src/SFML/Audio/SoundBuffer.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundBufferRecorder.cpp b/src/SFML/Audio/SoundBufferRecorder.cpp
index 12694354..2d8b63c7 100644
--- a/src/SFML/Audio/SoundBufferRecorder.cpp
+++ b/src/SFML/Audio/SoundBufferRecorder.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileFactory.cpp b/src/SFML/Audio/SoundFileFactory.cpp
index a0caf7a1..2f7ddfc2 100644
--- a/src/SFML/Audio/SoundFileFactory.cpp
+++ b/src/SFML/Audio/SoundFileFactory.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileReaderFlac.cpp b/src/SFML/Audio/SoundFileReaderFlac.cpp
index c9a8cb97..88600e30 100644
--- a/src/SFML/Audio/SoundFileReaderFlac.cpp
+++ b/src/SFML/Audio/SoundFileReaderFlac.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileReaderFlac.hpp b/src/SFML/Audio/SoundFileReaderFlac.hpp
index ac974ea1..53cf0c4f 100644
--- a/src/SFML/Audio/SoundFileReaderFlac.hpp
+++ b/src/SFML/Audio/SoundFileReaderFlac.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -132,8 +132,8 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- FLAC__StreamDecoder* m_decoder; ///< FLAC decoder
- ClientData m_clientData; ///< Structure passed to the decoder callbacks
+ FLAC__StreamDecoder* m_decoder; //!< FLAC decoder
+ ClientData m_clientData; //!< Structure passed to the decoder callbacks
};
} // namespace priv
diff --git a/src/SFML/Audio/SoundFileReaderOgg.cpp b/src/SFML/Audio/SoundFileReaderOgg.cpp
index 0621cad0..5585ab38 100644
--- a/src/SFML/Audio/SoundFileReaderOgg.cpp
+++ b/src/SFML/Audio/SoundFileReaderOgg.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileReaderOgg.hpp b/src/SFML/Audio/SoundFileReaderOgg.hpp
index 67b03f47..7942bec6 100644
--- a/src/SFML/Audio/SoundFileReaderOgg.hpp
+++ b/src/SFML/Audio/SoundFileReaderOgg.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileReaderWav.cpp b/src/SFML/Audio/SoundFileReaderWav.cpp
index e498dd55..df9dab94 100644
--- a/src/SFML/Audio/SoundFileReaderWav.cpp
+++ b/src/SFML/Audio/SoundFileReaderWav.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileReaderWav.hpp b/src/SFML/Audio/SoundFileReaderWav.hpp
index cc92aa9a..04e3a10d 100644
--- a/src/SFML/Audio/SoundFileReaderWav.hpp
+++ b/src/SFML/Audio/SoundFileReaderWav.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -112,10 +112,10 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- InputStream* m_stream; ///< Source stream to read from
- unsigned int m_bytesPerSample; ///< Size of a sample, in bytes
- Uint64 m_dataStart; ///< Starting position of the audio data in the open file
- Uint64 m_dataEnd; ///< Position one byte past the end of the audio data in the open file
+ InputStream* m_stream; //!< Source stream to read from
+ unsigned int m_bytesPerSample; //!< Size of a sample, in bytes
+ Uint64 m_dataStart; //!< Starting position of the audio data in the open file
+ Uint64 m_dataEnd; //!< Position one byte past the end of the audio data in the open file
};
} // namespace priv
diff --git a/src/SFML/Audio/SoundFileWriterFlac.cpp b/src/SFML/Audio/SoundFileWriterFlac.cpp
index f30c2fec..ddd3c20a 100644
--- a/src/SFML/Audio/SoundFileWriterFlac.cpp
+++ b/src/SFML/Audio/SoundFileWriterFlac.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileWriterFlac.hpp b/src/SFML/Audio/SoundFileWriterFlac.hpp
index 40b710f1..d54975e9 100644
--- a/src/SFML/Audio/SoundFileWriterFlac.hpp
+++ b/src/SFML/Audio/SoundFileWriterFlac.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -101,9 +101,9 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- FLAC__StreamEncoder* m_encoder; ///< FLAC stream encoder
- unsigned int m_channelCount; ///< Number of channels
- std::vector m_samples32; ///< Conversion buffer
+ FLAC__StreamEncoder* m_encoder; //!< FLAC stream encoder
+ unsigned int m_channelCount; //!< Number of channels
+ std::vector m_samples32; //!< Conversion buffer
};
} // namespace priv
diff --git a/src/SFML/Audio/SoundFileWriterOgg.cpp b/src/SFML/Audio/SoundFileWriterOgg.cpp
index 9791ef36..c56847e5 100644
--- a/src/SFML/Audio/SoundFileWriterOgg.cpp
+++ b/src/SFML/Audio/SoundFileWriterOgg.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileWriterOgg.hpp b/src/SFML/Audio/SoundFileWriterOgg.hpp
index 19bb6cca..7a482d1c 100644
--- a/src/SFML/Audio/SoundFileWriterOgg.hpp
+++ b/src/SFML/Audio/SoundFileWriterOgg.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileWriterWav.cpp b/src/SFML/Audio/SoundFileWriterWav.cpp
index 3353d236..4f82d5ef 100644
--- a/src/SFML/Audio/SoundFileWriterWav.cpp
+++ b/src/SFML/Audio/SoundFileWriterWav.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundFileWriterWav.hpp b/src/SFML/Audio/SoundFileWriterWav.hpp
index 0de16787..58d16845 100644
--- a/src/SFML/Audio/SoundFileWriterWav.hpp
+++ b/src/SFML/Audio/SoundFileWriterWav.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -112,7 +112,7 @@ private:
////////////////////////////////////////////////////////////
// Member data
////////////////////////////////////////////////////////////
- std::ofstream m_file; ///< File stream to write to
+ std::ofstream m_file; //!< File stream to write to
};
} // namespace priv
diff --git a/src/SFML/Audio/SoundRecorder.cpp b/src/SFML/Audio/SoundRecorder.cpp
index 8b0b6901..1066b452 100644
--- a/src/SFML/Audio/SoundRecorder.cpp
+++ b/src/SFML/Audio/SoundRecorder.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundSource.cpp b/src/SFML/Audio/SoundSource.cpp
index f4bc4b20..7bc6b3a0 100644
--- a/src/SFML/Audio/SoundSource.cpp
+++ b/src/SFML/Audio/SoundSource.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Audio/SoundStream.cpp b/src/SFML/Audio/SoundStream.cpp
index 5b6fff02..b4172a2b 100644
--- a/src/SFML/Audio/SoundStream.cpp
+++ b/src/SFML/Audio/SoundStream.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -51,7 +51,8 @@ m_sampleRate (0),
m_format (0),
m_loop (false),
m_samplesProcessed(0),
-m_bufferSeeks ()
+m_bufferSeeks (),
+m_processingInterval(milliseconds(10))
{
}
@@ -264,6 +265,11 @@ Int64 SoundStream::onLoop()
return 0;
}
+////////////////////////////////////////////////////////////
+void SoundStream::setProcessingInterval(Time interval)
+{
+ m_processingInterval = interval;
+}
////////////////////////////////////////////////////////////
void SoundStream::streamData()
@@ -384,7 +390,7 @@ void SoundStream::streamData()
// Leave some time for the other threads if the stream is still playing
if (SoundSource::getStatus() != Stopped)
- sleep(milliseconds(10));
+ sleep(m_processingInterval);
}
// Stop the playback
diff --git a/src/SFML/Graphics/BlendMode.cpp b/src/SFML/Graphics/BlendMode.cpp
index 7f0901af..7897247f 100644
--- a/src/SFML/Graphics/BlendMode.cpp
+++ b/src/SFML/Graphics/BlendMode.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/CMakeLists.txt b/src/SFML/Graphics/CMakeLists.txt
index f68121f7..14c48ea9 100644
--- a/src/SFML/Graphics/CMakeLists.txt
+++ b/src/SFML/Graphics/CMakeLists.txt
@@ -15,6 +15,10 @@ set(SRC
${INCROOT}/Glsl.hpp
${INCROOT}/Glsl.inl
${INCROOT}/Glyph.hpp
+ ${SRCROOT}/GLCheck.cpp
+ ${SRCROOT}/GLCheck.hpp
+ ${SRCROOT}/GLExtensions.hpp
+ ${SRCROOT}/GLExtensions.cpp
${SRCROOT}/Image.cpp
${INCROOT}/Image.hpp
${SRCROOT}/ImageLoader.cpp
@@ -22,30 +26,20 @@ set(SRC
${INCROOT}/PrimitiveType.hpp
${INCROOT}/Rect.hpp
${INCROOT}/Rect.inl
- ${SRCROOT}/Renderer.cpp
- ${INCROOT}/Renderer.hpp
${SRCROOT}/RenderStates.cpp
${INCROOT}/RenderStates.hpp
- ${SRCROOT}/RenderTargetImpl.cpp
- ${SRCROOT}/RenderTargetImpl.hpp
${SRCROOT}/RenderTexture.cpp
${INCROOT}/RenderTexture.hpp
- ${SRCROOT}/RenderTextureImpl.cpp
- ${SRCROOT}/RenderTextureImpl.hpp
${SRCROOT}/RenderTarget.cpp
${INCROOT}/RenderTarget.hpp
${SRCROOT}/RenderWindow.cpp
${INCROOT}/RenderWindow.hpp
${SRCROOT}/Shader.cpp
${INCROOT}/Shader.hpp
- ${SRCROOT}/ShaderImpl.cpp
- ${SRCROOT}/ShaderImpl.hpp
- ${SRCROOT}/ShaderImplNull.cpp
- ${SRCROOT}/ShaderImplNull.hpp
${SRCROOT}/Texture.cpp
${INCROOT}/Texture.hpp
- ${SRCROOT}/TextureImpl.cpp
- ${SRCROOT}/TextureImpl.hpp
+ ${SRCROOT}/TextureSaver.cpp
+ ${SRCROOT}/TextureSaver.hpp
${SRCROOT}/Transform.cpp
${INCROOT}/Transform.hpp
${SRCROOT}/Transformable.cpp
@@ -76,43 +70,24 @@ set(DRAWABLES_SRC
${INCROOT}/VertexArray.hpp
${SRCROOT}/VertexBuffer.cpp
${INCROOT}/VertexBuffer.hpp
- ${SRCROOT}/VertexBufferImpl.cpp
- ${SRCROOT}/VertexBufferImpl.hpp
)
source_group("drawables" FILES ${DRAWABLES_SRC})
-# OpenGL 1.x sources
-set(OPENGL_SRC
- ${SRCROOT}/OpenGL/GLCheck.cpp
- ${SRCROOT}/OpenGL/GLCheck.hpp
- ${SRCROOT}/OpenGL/GLExtensions.hpp
- ${SRCROOT}/OpenGL/GLExtensions.cpp
+# render-texture sources
+set(RENDER_TEXTURE_SRC
+ ${SRCROOT}/RenderTextureImpl.cpp
+ ${SRCROOT}/RenderTextureImpl.hpp
+ ${SRCROOT}/RenderTextureImplFBO.cpp
+ ${SRCROOT}/RenderTextureImplFBO.hpp
+ ${SRCROOT}/RenderTextureImplDefault.cpp
+ ${SRCROOT}/RenderTextureImplDefault.hpp
)
-source_group("opengl implementation" FILES ${OPENGL_SRC})
-
-# OpenGL 1.x sources
-set(OPENGL_1_SRC
- ${SRCROOT}/OpenGL/GL1/RenderTargetImplDefault.cpp
- ${SRCROOT}/OpenGL/GL1/RenderTargetImplDefault.hpp
- ${SRCROOT}/OpenGL/GL1/RenderTextureImplFBO.cpp
- ${SRCROOT}/OpenGL/GL1/RenderTextureImplFBO.hpp
- ${SRCROOT}/OpenGL/GL1/RenderTextureImplDefault.cpp
- ${SRCROOT}/OpenGL/GL1/RenderTextureImplDefault.hpp
- ${SRCROOT}/OpenGL/GL1/TextureImplDefault.cpp
- ${SRCROOT}/OpenGL/GL1/TextureImplDefault.hpp
- ${SRCROOT}/OpenGL/GL1/VertexBufferImplDefault.cpp
- ${SRCROOT}/OpenGL/GL1/VertexBufferImplDefault.hpp
-)
-if(NOT SFML_OPENGL_ES)
- list(APPEND OPENGL_1_SRC ${SRCROOT}/OpenGL/GL1/ShaderImplDefault.cpp)
- list(APPEND OPENGL_1_SRC ${SRCROOT}/OpenGL/GL1/ShaderImplDefault.hpp)
-endif()
-source_group("opengl 1.x implementation" FILES ${OPENGL_1_SRC})
+source_group("render texture" FILES ${RENDER_TEXTURE_SRC})
# define the sfml-graphics target
sfml_add_library(sfml-graphics
- SOURCES ${SRC} ${DRAWABLES_SRC} ${OPENGL_1_SRC} ${OPENGL_SRC} ${STB_SRC})
+ SOURCES ${SRC} ${DRAWABLES_SRC} ${RENDER_TEXTURE_SRC} ${STB_SRC})
# setup dependencies
target_link_libraries(sfml-graphics PUBLIC sfml-window)
diff --git a/src/SFML/Graphics/CircleShape.cpp b/src/SFML/Graphics/CircleShape.cpp
index 730353fc..8c70f626 100644
--- a/src/SFML/Graphics/CircleShape.cpp
+++ b/src/SFML/Graphics/CircleShape.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/Color.cpp b/src/SFML/Graphics/Color.cpp
index 02b8581f..b0bb6876 100644
--- a/src/SFML/Graphics/Color.cpp
+++ b/src/SFML/Graphics/Color.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/ConvexShape.cpp b/src/SFML/Graphics/ConvexShape.cpp
index 9346e3d9..fa5da832 100644
--- a/src/SFML/Graphics/ConvexShape.cpp
+++ b/src/SFML/Graphics/ConvexShape.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/Font.cpp b/src/SFML/Graphics/Font.cpp
index da3c96f3..ddc9d361 100644
--- a/src/SFML/Graphics/Font.cpp
+++ b/src/SFML/Graphics/Font.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -26,8 +26,7 @@
// Headers
////////////////////////////////////////////////////////////
#include
-#include
-#include
+#include
#ifdef SFML_SYSTEM_ANDROID
#include
#endif
@@ -89,6 +88,7 @@ m_face (NULL),
m_streamRec(NULL),
m_stroker (NULL),
m_refCount (NULL),
+m_isSmooth (true),
m_info ()
{
#ifdef SFML_SYSTEM_ANDROID
@@ -106,7 +106,8 @@ m_stroker (copy.m_stroker),
m_refCount (copy.m_refCount),
m_info (copy.m_info),
m_pages (copy.m_pages),
-m_pixelBuffer(copy.m_pixelBuffer)
+m_pixelBuffer(copy.m_pixelBuffer),
+m_isSmooth (copy.m_isSmooth)
{
#ifdef SFML_SYSTEM_ANDROID
m_stream = NULL;
@@ -366,6 +367,13 @@ const Glyph& Font::getGlyph(Uint32 codePoint, unsigned int characterSize, bool b
}
+////////////////////////////////////////////////////////////
+bool Font::hasGlyph(Uint32 codePoint) const
+{
+ return FT_Get_Char_Index(static_cast(m_face), codePoint) != 0;
+}
+
+
////////////////////////////////////////////////////////////
float Font::getKerning(Uint32 first, Uint32 second, unsigned int characterSize) const
{
@@ -462,6 +470,26 @@ const Texture& Font::getTexture(unsigned int characterSize) const
return m_pages[characterSize].texture;
}
+////////////////////////////////////////////////////////////
+void Font::setSmooth(bool smooth)
+{
+ if (smooth != m_isSmooth)
+ {
+ m_isSmooth = smooth;
+
+ for (sf::Font::PageTable::iterator page = m_pages.begin(); page != m_pages.end(); ++page)
+ {
+ page->second.texture.setSmooth(m_isSmooth);
+ }
+ }
+}
+
+////////////////////////////////////////////////////////////
+bool Font::isSmooth() const
+{
+ return m_isSmooth;
+}
+
////////////////////////////////////////////////////////////
Font& Font::operator =(const Font& right)
@@ -476,6 +504,7 @@ Font& Font::operator =(const Font& right)
std::swap(m_info, temp.m_info);
std::swap(m_pages, temp.m_pages);
std::swap(m_pixelBuffer, temp.m_pixelBuffer);
+ std::swap(m_isSmooth, temp.m_isSmooth);
#ifdef SFML_SYSTEM_ANDROID
std::swap(m_stream, temp.m_stream);
@@ -728,7 +757,7 @@ IntRect Font::findGlyphRect(Page& page, unsigned int width, unsigned int height)
// Make the texture 2 times bigger
Texture newTexture;
newTexture.create(textureWidth * 2, textureHeight * 2);
- newTexture.setSmooth(true);
+ newTexture.setSmooth(m_isSmooth);
newTexture.update(page.texture);
page.texture.swap(newTexture);
}
diff --git a/src/SFML/Graphics/OpenGL/GLCheck.cpp b/src/SFML/Graphics/GLCheck.cpp
similarity index 97%
rename from src/SFML/Graphics/OpenGL/GLCheck.cpp
rename to src/SFML/Graphics/GLCheck.cpp
index 76afe399..e908eaae 100644
--- a/src/SFML/Graphics/OpenGL/GLCheck.cpp
+++ b/src/SFML/Graphics/GLCheck.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -25,7 +25,7 @@
////////////////////////////////////////////////////////////
// Headers
////////////////////////////////////////////////////////////
-#include
+#include
#include
#include
diff --git a/src/SFML/Graphics/OpenGL/GLCheck.hpp b/src/SFML/Graphics/GLCheck.hpp
similarity index 95%
rename from src/SFML/Graphics/OpenGL/GLCheck.hpp
rename to src/SFML/Graphics/GLCheck.hpp
index 55ca7d55..c1bcaea3 100644
--- a/src/SFML/Graphics/OpenGL/GLCheck.hpp
+++ b/src/SFML/Graphics/GLCheck.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -29,7 +29,7 @@
// Headers
////////////////////////////////////////////////////////////
#include
-#include
+#include
namespace sf
diff --git a/src/SFML/Graphics/OpenGL/GLExtensions.cpp b/src/SFML/Graphics/GLExtensions.cpp
similarity index 96%
rename from src/SFML/Graphics/OpenGL/GLExtensions.cpp
rename to src/SFML/Graphics/GLExtensions.cpp
index 914219ad..109fe3a9 100644
--- a/src/SFML/Graphics/OpenGL/GLExtensions.cpp
+++ b/src/SFML/Graphics/GLExtensions.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
@@ -26,7 +26,7 @@
// Headers
////////////////////////////////////////////////////////////
#define SF_GLAD_GL_IMPLEMENTATION
-#include
+#include
#include
#include
diff --git a/src/SFML/Graphics/OpenGL/GLExtensions.hpp b/src/SFML/Graphics/GLExtensions.hpp
similarity index 99%
rename from src/SFML/Graphics/OpenGL/GLExtensions.hpp
rename to src/SFML/Graphics/GLExtensions.hpp
index 829155fa..ec0391d4 100644
--- a/src/SFML/Graphics/OpenGL/GLExtensions.hpp
+++ b/src/SFML/Graphics/GLExtensions.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/OpenGL/GLExtensions.txt b/src/SFML/Graphics/GLExtensions.txt
similarity index 100%
rename from src/SFML/Graphics/OpenGL/GLExtensions.txt
rename to src/SFML/Graphics/GLExtensions.txt
diff --git a/src/SFML/Graphics/Glsl.cpp b/src/SFML/Graphics/Glsl.cpp
index 3a1e5593..557dc9bd 100644
--- a/src/SFML/Graphics/Glsl.cpp
+++ b/src/SFML/Graphics/Glsl.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/Image.cpp b/src/SFML/Graphics/Image.cpp
index 1ef43269..bb791d66 100644
--- a/src/SFML/Graphics/Image.cpp
+++ b/src/SFML/Graphics/Image.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/ImageLoader.cpp b/src/SFML/Graphics/ImageLoader.cpp
index 3c26e49c..d0e7ac9e 100644
--- a/src/SFML/Graphics/ImageLoader.cpp
+++ b/src/SFML/Graphics/ImageLoader.cpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/ImageLoader.hpp b/src/SFML/Graphics/ImageLoader.hpp
index ce437b43..c178cb7a 100644
--- a/src/SFML/Graphics/ImageLoader.hpp
+++ b/src/SFML/Graphics/ImageLoader.hpp
@@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////
//
// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
+// Copyright (C) 2007-2020 Laurent Gomila (laurent@sfml-dev.org)
//
// This software is provided 'as-is', without any express or implied warranty.
// In no event will the authors be held liable for any damages arising from the use of this software.
diff --git a/src/SFML/Graphics/OpenGL/GL1/RenderTargetImplDefault.cpp b/src/SFML/Graphics/OpenGL/GL1/RenderTargetImplDefault.cpp
deleted file mode 100644
index f8e7c45e..00000000
--- a/src/SFML/Graphics/OpenGL/GL1/RenderTargetImplDefault.cpp
+++ /dev/null
@@ -1,704 +0,0 @@
-////////////////////////////////////////////////////////////
-//
-// SFML - Simple and Fast Multimedia Library
-// Copyright (C) 2007-2019 Laurent Gomila (laurent@sfml-dev.org)
-//
-// This software is provided 'as-is', without any express or implied warranty.
-// In no event will the authors be held liable for any damages arising from the use of this software.
-//
-// Permission is granted to anyone to use this software for any purpose,
-// including commercial applications, and to alter it and redistribute it freely,
-// subject to the following restrictions:
-//
-// 1. The origin of this software must not be misrepresented;
-// you must not claim that you wrote the original software.
-// If you use this software in a product, an acknowledgment
-// in the product documentation would be appreciated but is not required.
-//
-// 2. Altered source versions must be plainly marked as such,
-// and must not be misrepresented as being the original software.
-//
-// 3. This notice may not be removed or altered from any source distribution.
-//
-////////////////////////////////////////////////////////////
-
-////////////////////////////////////////////////////////////
-// Headers
-////////////////////////////////////////////////////////////
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include