Overte C++ Documentation
SoundCache.h
1 //
2 // SoundCache.h
3 // libraries/audio/src
4 //
5 // Created by Stephen Birarda on 2014-11-13.
6 // Copyright 2014 High Fidelity, Inc.
7 //
8 // Distributed under the Apache License, Version 2.0.
9 // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
10 //
11 
12 #ifndef hifi_SoundCache_h
13 #define hifi_SoundCache_h
14 
15 #include <QtCore/QSharedPointer>
16 
17 #include <ResourceCache.h>
18 
19 #include "Sound.h"
20 
21 class SoundCache : public ResourceCache, public Dependency {
22  Q_OBJECT
23  SINGLETON_DEPENDENCY
24 
25 public:
26  Q_INVOKABLE SharedSoundPointer getSound(const QUrl& url);
27 
28 protected:
29  virtual QSharedPointer<Resource> createResource(const QUrl& url) override;
30  QSharedPointer<Resource> createResourceCopy(const QSharedPointer<Resource>& resource) override;
31 
32 private:
33  SoundCache(QObject* parent = NULL);
34 };
35 
36 #endif // hifi_SoundCache_h
Base class for resource caches.
Definition: ResourceCache.h:196
virtual QSharedPointer< Resource > createResource(const QUrl &url)=0
Creates a new resource.