Mercurial > hg > sv-dependency-builds
comparison src/portaudio/bindings/cpp/include/portaudiocpp/SystemHostApiIterator.hxx @ 89:8a15ff55d9af
Add bzip2, zlib, liblo, portaudio sources
| author | Chris Cannam <cannam@all-day-breakfast.com> |
|---|---|
| date | Wed, 20 Mar 2013 13:59:52 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 88:fe7c3a0b0259 | 89:8a15ff55d9af |
|---|---|
| 1 #ifndef INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX | |
| 2 #define INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX | |
| 3 | |
| 4 // --------------------------------------------------------------------------------------- | |
| 5 | |
| 6 #include <iterator> | |
| 7 #include <cstddef> | |
| 8 | |
| 9 #include "portaudiocpp/System.hxx" | |
| 10 | |
| 11 // --------------------------------------------------------------------------------------- | |
| 12 | |
| 13 // Forward declaration(s): | |
| 14 namespace portaudio | |
| 15 { | |
| 16 class HostApi; | |
| 17 } | |
| 18 | |
| 19 // --------------------------------------------------------------------------------------- | |
| 20 | |
| 21 // Declaration(s): | |
| 22 namespace portaudio | |
| 23 { | |
| 24 | |
| 25 | |
| 26 ////// | |
| 27 /// @brief Iterator class for iterating through all HostApis in a System. | |
| 28 /// | |
| 29 /// Compliant with the STL bidirectional iterator concept. | |
| 30 ////// | |
| 31 class System::HostApiIterator | |
| 32 { | |
| 33 public: | |
| 34 typedef std::bidirectional_iterator_tag iterator_category; | |
| 35 typedef Device value_type; | |
| 36 typedef ptrdiff_t difference_type; | |
| 37 typedef HostApi * pointer; | |
| 38 typedef HostApi & reference; | |
| 39 | |
| 40 HostApi &operator*() const; | |
| 41 HostApi *operator->() const; | |
| 42 | |
| 43 HostApiIterator &operator++(); | |
| 44 HostApiIterator operator++(int); | |
| 45 HostApiIterator &operator--(); | |
| 46 HostApiIterator operator--(int); | |
| 47 | |
| 48 bool operator==(const HostApiIterator &rhs); | |
| 49 bool operator!=(const HostApiIterator &rhs); | |
| 50 | |
| 51 private: | |
| 52 friend class System; | |
| 53 HostApi **ptr_; | |
| 54 }; | |
| 55 | |
| 56 | |
| 57 } // namespace portaudio | |
| 58 | |
| 59 // --------------------------------------------------------------------------------------- | |
| 60 | |
| 61 #endif // INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX |
