]> git.mxchange.org Git - simgear.git/blobdiff - simgear/package/Package.hxx
Fix platform check for strerror_r on Mac
[simgear.git] / simgear / package / Package.hxx
index 50783063b9e5c3c775ad1f462f671774a240cb20..840a22cd66d2458f47fa1c4630e1e5eec2a4403e 100644 (file)
@@ -75,6 +75,11 @@ public:
      * Fully-qualified ID, including our catalog'd ID
      */
     std::string qualifiedId() const;
+
+    /**
+     * Fully-qualified ID, including our catalog'd ID
+     */
+    std::string qualifiedVariantId(const unsigned int variantIndex) const;
     
     /**
      * human-readable name - note this is probably not localised,
@@ -87,6 +92,8 @@ public:
      */
     std::string nameForVariant(const std::string& vid) const;
 
+    std::string nameForVariant(const unsigned int vIndex) const;
+
     /**
      * syntactic sugar to get the localised description
      */
@@ -112,7 +119,9 @@ public:
         { return m_catalog; }
     
     bool matches(const SGPropertyNode* aFilter) const;
-    
+
+    string_set tags() const;
+
     /**
      * download URLs for the package
      */
@@ -120,16 +129,28 @@ public:
     
     string_list thumbnailUrls() const;
     
+    /**
+     * thumbnail file paths within the package on disk
+     */
+    string_list thumbnails() const;
+    
     /**
      * Packages we depend upon.
      * If the dependency list cannot be satisifed for some reason,
      * this will raise an sg_exception.
      */
     PackageList dependencies() const;
+
+    /**
+     * Name of the package directory on disk. This may or may not be the
+     * same as the primary ID, depending on the aircraft author
+     */
+    std::string dirName() const;
 private:
     SGPath pathOnDisk() const;
 
     friend class Catalog;
+    friend class Root;
     
     Package(const SGPropertyNode* aProps, CatalogRef aCatalog);