All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ResourceStreamComponent.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Resources.h"
6 #include "Streaming.h"
7 #include <string>
8 
9 namespace Eegeo
10 {
11  namespace Streaming
12  {
14  {
15  public:
17  : m_resourceBuilder(resourceBuilder)
18  , m_priority(0)
19  {
20 
21  }
22 
23  ResourceStreamComponent(std::string name,
24  Resources::IResourceBuilder& resourceBuilder,
25  std::string serverBaseUrl,
26  std::string storeRelativePath,
27  std::string featureRelativePath,
28  std::string resourceName,
29  std::string resourceExtension,
30  int priority
31  );
32 
33  std::string Name() const { return m_name; }
34  Resources::IResourceBuilder& GetResourceBuilder() const { return m_resourceBuilder; }
35  std::string UrlFor(const MortonKey& key, bool relativeUrl) const;
36  std::string CoverageTreeUrl() const;
37  std::string ResourceName() const;
38 
39  int GetPriority() const { return m_priority; }
40 
41  private:
42  std::string m_name;
43  Resources::IResourceBuilder& m_resourceBuilder;
44  std::string m_serverBaseUrl;
45  std::string m_storeRelativePath;
46  std::string m_featureRelativePath;
47  std::string m_resourceName;
48  std::string m_resourceExtension;
49  int m_priority;
50  };
51  }
52 }