IVGCVSW-1951 remove type templating from ClPadWorkload

Change-Id: I8182f781369956ca96562777f170ef677f831e4e
diff --git a/src/backends/cl/ClWorkloadFactory.cpp b/src/backends/cl/ClWorkloadFactory.cpp
index b4f4a72..b5b863b 100644
--- a/src/backends/cl/ClWorkloadFactory.cpp
+++ b/src/backends/cl/ClWorkloadFactory.cpp
@@ -267,8 +267,7 @@
 std::unique_ptr<IWorkload> ClWorkloadFactory::CreatePad(const PadQueueDescriptor& descriptor,
                                                         const WorkloadInfo& info) const
 {
-    return MakeWorkload<ClPadWorkload<armnn::DataType::Float16, armnn::DataType::Float32>,
-                        ClPadWorkload<armnn::DataType::QuantisedAsymm8>>(descriptor, info);
+    return std::make_unique<ClPadWorkload>(descriptor, info);
 }
 
 void ClWorkloadFactory::Finalize()
diff --git a/src/backends/cl/workloads/ClPadWorkload.cpp b/src/backends/cl/workloads/ClPadWorkload.cpp
index 89b0d8f..e75af83 100644
--- a/src/backends/cl/workloads/ClPadWorkload.cpp
+++ b/src/backends/cl/workloads/ClPadWorkload.cpp
@@ -15,9 +15,8 @@
 {
 using namespace armcomputetensorutils;
 
-template <armnn::DataType... T>
-ClPadWorkload<T...>::ClPadWorkload(const PadQueueDescriptor& descriptor, const WorkloadInfo& info)
-: TypedWorkload<PadQueueDescriptor, T...>(descriptor, info)
+ClPadWorkload::ClPadWorkload(const PadQueueDescriptor& descriptor, const WorkloadInfo& info)
+    : BaseWorkload<PadQueueDescriptor>(descriptor, info)
 {
     this->m_Data.ValidateInputsOutputs("ClPadWorkload", 1, 1);
 
@@ -28,8 +27,7 @@
     m_Layer.configure(&input, &output, padList);
 }
 
-template <armnn::DataType... T>
-void ClPadWorkload<T...>::Execute() const
+void ClPadWorkload::Execute() const
 {
     ARMNN_SCOPED_PROFILING_EVENT_CL("ClPadWorkload_Execute");
     m_Layer.run();
@@ -51,6 +49,3 @@
 }
 
 } // namespace armnn
-
-template class armnn::ClPadWorkload<armnn::DataType::Float16, armnn::DataType::Float32>;
-template class armnn::ClPadWorkload<armnn::DataType::QuantisedAsymm8>;
diff --git a/src/backends/cl/workloads/ClPadWorkload.hpp b/src/backends/cl/workloads/ClPadWorkload.hpp
index 97f57fd..70f6c42 100644
--- a/src/backends/cl/workloads/ClPadWorkload.hpp
+++ b/src/backends/cl/workloads/ClPadWorkload.hpp
@@ -11,8 +11,7 @@
 
 namespace armnn {
 
-template <armnn::DataType... dataTypes>
-class ClPadWorkload : public TypedWorkload<PadQueueDescriptor, dataTypes...>
+class ClPadWorkload : public BaseWorkload<PadQueueDescriptor>
 {
 public:
     ClPadWorkload(const PadQueueDescriptor& descriptor, const WorkloadInfo& info);
@@ -28,4 +27,3 @@
                                   const PadDescriptor& descriptor);
 
 } //namespace armnn
-