diff --git a/src/isolator/hei_isolator.cpp b/src/isolator/hei_isolator.cpp
index 64cfe3e..cbb6652 100644
--- a/src/isolator/hei_isolator.cpp
+++ b/src/isolator/hei_isolator.cpp
@@ -24,7 +24,8 @@
     // END temporary code
 }
 
-ReturnCode Isolator::isolate( IsolationData & o_isoData ) const
+ReturnCode Isolator::isolate( const std::vector<Chip> & i_chipList,
+                              IsolationData & o_isoData ) const
 {
     ReturnCode rc;
 
@@ -32,8 +33,11 @@
     o_isoData.clear();
 
     // BEGIN temporary code
-    HEI_INF( "Isolator::isolate(%p,%u)", o_isoData.getChip(),
-             o_isoData.getChipType() );
+    for ( auto const & chip : i_chipList )
+    {
+        HEI_INF( "Isolator::isolate(%p,%u)", chip.getChip(),
+                 chip.getType() );
+    }
     // END temporary code
 
     return rc;
diff --git a/src/isolator/hei_isolator.hpp b/src/isolator/hei_isolator.hpp
index 4687b4f..1cc29b7 100644
--- a/src/isolator/hei_isolator.hpp
+++ b/src/isolator/hei_isolator.hpp
@@ -2,7 +2,6 @@
 
 #include <hei_includes.hpp>
 #include <hei_isolation_data.hpp>
-#include <chip_data/hei_chip_data.hpp>
 
 namespace libhei
 {
@@ -15,8 +14,8 @@
  *  - Create a singleton instance of an Isolator object via getSingleton().
  *  - Use initialize() to input each necessary Chip Data File provided by the
  *    user application.
- *  - Call isolate() each time you want to find all active errors being
- *    reported by a chip.
+ *  - Call isolate() to find all active errors being reported by the given list
+ *    of chips.
  *  - Once isolation is no longer needed, use uninitialize() to free up
  *    internal resources.
  *
@@ -69,7 +68,8 @@
     void uninitialize();
 
     /** @brief See API wrapper description in hei_main.hpp. */
-    ReturnCode isolate( IsolationData & o_isoData ) const;
+    ReturnCode isolate( const std::vector<Chip> & i_chipList,
+                        IsolationData & o_isoData ) const;
 
   private:
 
