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