Ilwis-Objects  1.0
GIS and Remote Sensing framework for data access and processing
 All Classes Functions Enumerations Pages
catalogexplorer.h
1 #ifndef CATALOGEXPLORER_H
2 #define CATALOGEXPLORER_H
3 
4 
5 namespace Ilwis {
6 class KERNELSHARED_EXPORT CatalogExplorer
7 {
8 public:
10  CatalogExplorer(const Resource& resource,const PrepareOptions& options=PrepareOptions());
11  virtual ~CatalogExplorer();
12 
13  virtual std::vector<Resource> loadItems() = 0;
14  virtual bool canUse(const Resource& res) const = 0;
15  virtual QString provider() const = 0;
16  Resource source() const;
17  virtual QFileInfo toLocalFile(const QUrl &datasource) const = 0;
18  QFileInfo resolve2Local() const;
19 
20 private:
21  Resource _resource;
22 
23 };
24 }
25 
26 #define NEW_CATALOGEXPLORER(name) \
27  private: \
28 static name *dummy_explorer;
29 
30 #define REGISTER_CATALOGEXPLORER(name) \
31  name *name::dummy_explorer = ConnectorFactory::registerCatalogExplorer(name::create);
32 
33 
34 #endif // CATALOGEXPLORER_H