PXL
function.hpp
Go to the documentation of this file.
1 // SPDX-License-Identifier: Apache-2.0
2 // Copyright 2024 XCENA Inc.
3 
4 #pragma once
5 
6 #include <cstdint>
7 #include <string>
8 
9 namespace pxl
10 {
21 class Function
22 {
23 public:
27  Function(const Function&) = delete;
28 
32  Function& operator=(const Function&) = delete;
33 
39  virtual uint32_t muFuncIndex() const = 0;
40 
46  virtual std::string muFuncName() const = 0;
47 
48 protected:
49  Function() = default;
50  virtual ~Function() = default;
51 };
52 } // namespace pxl
Defines a function to be executed by each thread on the MU.
Definition: function.hpp:22
Function()=default
virtual uint32_t muFuncIndex() const =0
Returns the index of the function.
Function(const Function &)=delete
Deleted copy constructor.
virtual ~Function()=default
Function & operator=(const Function &)=delete
Deleted copy assignment operator.
virtual std::string muFuncName() const =0
Returns the name of the function.
Definition: config.hpp:11