Dawn Framework 1.0
Universal data acquisition framework for embedded systems
factory.hxx
1// dawn/include/dawn/io/factory.hxx
2//
3// SPDX-License-Identifier: Apache-2.0
4//
5
6#pragma once
7
8#include "dawn/common/descobject.hxx"
9#include "dawn/porting/config.hxx"
10
11namespace dawn
12{
13// Forward declaration
14
15class CIOCommon;
16
20{
21public:
22 virtual ~IIOFactory() {};
23
33 virtual CIOCommon *create(CDescObject &desc) = 0;
34};
35
38class CIOFactory : public IIOFactory
39{
40public:
41 CIOFactory() = default;
42 ~CIOFactory() override = default;
43
53 CIOCommon *create(CDescObject &desc) override;
54};
55} // Namespace dawn
Descriptor wrapper for individual object configuration.
Base class for all I/O objects.
Definition common.hxx:27
Built-in I/O object factory for standard I/O types.
Definition factory.hxx:39
CIOCommon * create(CDescObject &desc)
Create I/O object from descriptor.
Definition factory.cxx:105
Abstract factory interface for extensible I/O object creation.
Definition factory.hxx:20
virtual CIOCommon * create(CDescObject &desc)=0
Create I/O object from descriptor.
Out-of-tree user-extension hooks for Dawn.
Definition bindable.hxx:13