Created Signature class and added to isolation data
Signed-off-by: Zane Shelley <zshelle@us.ibm.com>
Change-Id: I84653e1daa2b27327586817af5eb42de61bc37fa
diff --git a/src/hei_isolation_data.hpp b/src/hei_isolation_data.hpp
index 0117ce5..ee1432d 100644
--- a/src/hei_isolation_data.hpp
+++ b/src/hei_isolation_data.hpp
@@ -1,6 +1,7 @@
#pragma once
#include <hei_includes.hpp>
+#include <isolator/hei_signature.hpp>
namespace libhei
{
@@ -13,7 +14,7 @@
*/
class IsolationData
{
- public:
+ public: // Constructors, destructor, assignment, etc.
/** @brief Default constructor. */
IsolationData() = default;
@@ -27,12 +28,35 @@
/** @brief Assignment operator. */
IsolationData & operator=( const IsolationData & ) = default;
- /** @brief Flushes the data to ensure a clean slate for next isolation. */
- void clear() {}
+ private: // Instance variables
- private:
+ /** A list of all signatures found during isolation. */
+ std::vector<Signature> iv_sigLists;
- // TODO: add error signature list and register dump.
+ // TODO: add register dump.
+
+ public: // Member functions
+
+ /**
+ * @brief Adds a signature to the signature list.
+ * @param i_signature The target signature.
+ */
+ void addSignature( const Signature & i_signature )
+ {
+ iv_sigLists.push_back( i_signature );
+ }
+
+ /** @brief Allows access to the signature list. */
+ const std::vector<Signature> & getSignatureList()
+ {
+ return iv_sigLists;
+ }
+
+ /** @brief Flushes the data to ensure a clean slate for isolation. */
+ void flush()
+ {
+ iv_sigLists.clear();
+ }
}; // end class IsolationData