From 483c73630a82fe8fbe9fe74cc8bbdd23a13d8b6b Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周六, 15 2月 2020 23:49:50 +0800 Subject: [PATCH] pc identifiers work --- src/library/hw_identifier/identification_strategy.hpp | 23 ++++++++++++++--------- 1 files changed, 14 insertions(+), 9 deletions(-) diff --git a/src/library/pc_identifier/identification_strategy.hpp b/src/library/hw_identifier/identification_strategy.hpp similarity index 63% rename from src/library/pc_identifier/identification_strategy.hpp rename to src/library/hw_identifier/identification_strategy.hpp index 8eef0c8..ad3e2de 100644 --- a/src/library/pc_identifier/identification_strategy.hpp +++ b/src/library/hw_identifier/identification_strategy.hpp @@ -13,26 +13,31 @@ #include <vector> #include <bits/unique_ptr.h> #include "../base/base.h" -#include "pc_identifier.hpp" +#include "hw_identifier.hpp" + namespace license { -namespace pc_identifier { +namespace hw_identifier { class IdentificationStrategy { protected: - LCC_EVENT_TYPE validate_identifier(const PcIdentifier& identifier, - const std::vector<std::array<uint8_t, 8>>& available_ids) const; + IdentificationStrategy(){}; public: - IdentificationStrategy(){}; virtual ~IdentificationStrategy(){}; virtual LCC_API_IDENTIFICATION_STRATEGY identification_strategy() const = 0; - virtual FUNCTION_RETURN identify_pc(PcIdentifier& identifier) const = 0; - virtual std::vector<PcIdentifier> alternative_ids() const = 0; - virtual LCC_EVENT_TYPE validate_identifier(const PcIdentifier& identifier) const = 0; + virtual FUNCTION_RETURN identify_pc(HwIdentifier& identifier_out) const; + virtual std::vector<HwIdentifier> alternative_ids() const = 0; + virtual LCC_EVENT_TYPE validate_identifier(const HwIdentifier& identifier_in) const; + + /** + * Factory method to create an instance of IdentificationStrategy + * @param strategy + * @return + */ static std::unique_ptr<IdentificationStrategy> get_strategy(LCC_API_IDENTIFICATION_STRATEGY strategy); }; -} // namespace pc_identifier +} // namespace hw_identifier } /* namespace license */ #endif /* SRC_LIBRARY_PC_IDENTIFIER_IDENTIFICATION_STRATEGY_HPP_ */ -- Gitblit v1.9.1