vendor.h 700 B

1234567891011121314151617181920212223242526272829303132333435
  1. #ifndef PKGLIB_VENDOR_H
  2. #define PKGLIB_VENDOR_H
  3. #include <string>
  4. #include <vector>
  5. #include <map>
  6. using std::string;
  7. // A class representing a particular software provider.
  8. class Vendor
  9. {
  10. public:
  11. struct Fingerprint
  12. {
  13. string Print;
  14. string Description;
  15. };
  16. protected:
  17. string VendorID;
  18. string Origin;
  19. std::map<string, string> Fingerprints;
  20. public:
  21. Vendor(string VendorID, string Origin,
  22. std::vector<struct Fingerprint *> *FingerprintList);
  23. virtual const string& GetVendorID() const { return VendorID; };
  24. virtual const string LookupFingerprint(string Print) const;
  25. virtual bool CheckDist(string Dist);
  26. virtual ~Vendor(){};
  27. };
  28. #endif