F´ Flight Software - C/C++ Documentation NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BlockDriverImpl.hpp
Go to the documentation of this file.
1#ifndef DRV_BLOCK_DRIVER_IMPL_HPP
2#define DRV_BLOCK_DRIVER_IMPL_HPP
3
5
6namespace Drv {
7
9
10 public:
11
12 // Only called by derived class
13 BlockDriverImpl(const char* compName);
14
15 void init(NATIVE_INT_TYPE queueDepth, NATIVE_INT_TYPE instanceId = 0);
17 // a little hack to get the reference running
18 void callIsr();
19
20 private:
21
22 // downcalls for input ports
23 void InterruptReport_internalInterfaceHandler(U32 ip);
24 void BufferIn_handler(NATIVE_INT_TYPE portNum, Drv::DataBuffer& buffer);
25 void Sched_handler(NATIVE_INT_TYPE portNum, NATIVE_UINT_TYPE context);
28 void PingIn_handler(
29 const NATIVE_INT_TYPE portNum,
30 U32 key
31 );
32
33 // static ISR callback
34 static void s_driverISR(void* arg);
35
36 // cycle count
37 U32 m_cycles;
38
39 };
40}
41
42#endif
PlatformIntType NATIVE_INT_TYPE
Definition BasicTypes.h:51
PlatformUIntType NATIVE_UINT_TYPE
Definition BasicTypes.h:52
Auto-generated base for BlockDriver component.
BlockDriverImpl(const char *compName)
void init()
Object initializer.
Definition ObjBase.cpp:27