This commit adds the following Layer-related classes which will be extended later.
- Layer (base class)
- LayerAnalysisPass (for read-only passes)
- LayerTransformPass (for read-write passes)
Signed-off-by: Jonghyun Park <jh1302.park@samsung.com>
--- /dev/null
+#ifndef __LAYER_H__
+#define __LAYER_H__
+
+struct LayerAnalysisPass;
+struct LayerTransformPass;
+
+struct Layer
+{
+ virtual ~Layer() = default;
+
+ virtual void accept(LayerAnalysisPass &&) const = 0;
+ virtual void accept(LayerTransformPass &&) = 0;
+};
+
+#endif // __LAYER_H__
--- /dev/null
+#ifndef __LAYER_ANALYSIS_PASS_H__
+#define __LAYER_ANALYSIS_PASS_H__
+
+struct LayerAnalysisPass
+{
+ virtual ~LayerAnalysisPass() = default;
+};
+
+#endif // __LAYER_ANALYSIS_PASS_H__
--- /dev/null
+#ifndef __LAYER_TRANSFORM_PASS_H__
+#define __LAYER_TRANSFORM_PASS_H__
+
+struct LayerTransformPass
+{
+ virtual ~LayerTransformPass() = default;
+};
+
+#endif // __LAYER_TRANSFORM_PASS_H__