Dawn Framework 1.0
Universal data acquisition framework for embedded systems
factory.hxx
1// dawn/include/dawn/proto/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#include "dawn/proto/common.hxx"
11
12namespace dawn
13{
17{
18public:
19 virtual ~IProtoFactory() {};
20
31 virtual CProtoCommon *create(CDescObject &desc) = 0;
32};
33
37{
38public:
41 CProtoFactory() = default;
42
45 ~CProtoFactory() override = default;
46
57 CProtoCommon *create(CDescObject &desc) override;
58};
59} // Namespace dawn
Descriptor wrapper for individual object configuration.
Base class for all protocol implementations.
Definition common.hxx:23
Built-in protocol factory.
Definition factory.hxx:37
~CProtoFactory()=default
Destructor.
CProtoCommon * create(CDescObject &desc)
Create a protocol object from descriptor.
Definition factory.cxx:48
CProtoFactory()=default
Constructor.
Abstract factory interface for protocol creation.
Definition factory.hxx:17
virtual CProtoCommon * create(CDescObject &desc)=0
Create a protocol object.
Out-of-tree user-extension hooks for Dawn.
Definition bindable.hxx:13