ccNOos
v0.0.0
Build Portable Microcontroller Applications!
compute_module.h
Go to the documentation of this file.
1
/** \file compute_module.h
2
* \brief <a href="https://www.inmechasol.org/" target="_blank">IMS</a>:
3
<a href="https://github.com/InMechaSol/ccNOos" target="_blank">ccNOos</a>,
4
Declarations for straight C and C++
5
6
Copyright 2021 <a href="https://www.inmechasol.org/" target="_blank">InMechaSol, Inc</a>
7
8
Licensed under the Apache License, Version 2.0(the "License");
9
you may not use this file except in compliance with the License.
10
You may obtain a copy of the License at
11
12
http://www.apache.org/licenses/LICENSE-2.0
13
14
Unless required by applicable law or agreed to in writing, software
15
distributed under the License is distributed on an "AS IS" BASIS,
16
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
See the License for the specific language governing permissions and
18
limitations under the License.
19
20
Notes:
21
(.c includes .h) - for straight C or
22
(.cpp includes .c which includes .h) - for C++ wrapped straight C
23
*Always compiled to a single compilation unit, either C or CPP, not both
24
25
*/
26
27
#ifndef __COMPUTE_MODULE__
28
#define __COMPUTE_MODULE__
29
30
#include "
version_config.h
"
31
32
struct
computeModuleStruct
33
{
34
UI_32
exceptionFlags
;
35
};
36
37
struct
computeModuleStruct
CreateComputeModuleStruct
();
38
39
#ifdef __cplusplus
40
//class executionSystemClass; // forward declaration of execution system class
41
42
class
computeModuleClass
// declaration of compute module class
43
{
44
protected
:
45
struct
computeModuleStruct
*compModDataPtr =
nullptr
;
46
public
:
47
computeModuleClass(
48
struct
computeModuleStruct
*compModDataPtrIn
49
);
50
virtual
int
mod_setup() = 0;
51
virtual
int
mod_loop() = 0;
52
virtual
void
mod_systick() = 0;
53
virtual
int
mod_excphandler() = 0;
54
struct
computeModuleStruct
* getModuleDataPtr();
55
};
56
57
#endif // !__cplusplus
58
#endif // ! __COMPUTE_MODULE__
computeModuleStruct
Definition:
compute_module.h:33
CreateComputeModuleStruct
struct computeModuleStruct CreateComputeModuleStruct()
Definition:
compute_module.c:30
computeModuleStruct::exceptionFlags
UI_32 exceptionFlags
Definition:
compute_module.h:34
version_config.h
IMS: ccNOos, Declarations for straight C and C++
computeModule
compute_module.h
Generated by
1.8.20