diff options
Diffstat (limited to 'Swiften/StreamStack/StreamStack.h')
| -rw-r--r-- | Swiften/StreamStack/StreamStack.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/Swiften/StreamStack/StreamStack.h b/Swiften/StreamStack/StreamStack.h index b12a69f..5b77085 100644 --- a/Swiften/StreamStack/StreamStack.h +++ b/Swiften/StreamStack/StreamStack.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2010-2016 Isode Limited. + * Copyright (c) 2010-2018 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once @@ -22,27 +22,27 @@ namespace Swift { class SWIFTEN_API StreamStack { public: StreamStack(XMPPLayer* xmppLayer, LowLayer* physicalLayer); ~StreamStack(); - void addLayer(StreamLayer*); + void addLayer(std::unique_ptr<StreamLayer> /* streamLayer */); XMPPLayer* getXMPPLayer() const { return xmppLayer_; } - template<typename T> T* getLayer() { - for (auto& i : layers_) { - T* layer = dynamic_cast<T*>(i); + template<typename T> T* getLayer() const { + for (const auto& i : layers_) { + T* layer = dynamic_cast<T*>(i.get()); if (layer) { return layer; } } return nullptr; } private: XMPPLayer* xmppLayer_; LowLayer* physicalLayer_; - std::vector<StreamLayer*> layers_; + std::vector<std::unique_ptr<StreamLayer>> layers_; }; } |
Swift