![]() |
AMS Advanced Air Mobility Sensors UG
|
CAN General Handler software component. More...
Classes | |
| struct | SCanasPlatform |
| Platform-specific data. More... | |
Public Member Functions | |
| void | Init () override |
| bool | IsInitialized () override |
Public Member Functions inherited from CSoftwareComponent< CCanHandler, 1U > | |
| CSoftwareComponent (CSoftwareComponent &)=delete | |
| CSoftwareComponent (CSoftwareComponent &&)=delete | |
| CSoftwareComponent & | operator= (const CSoftwareComponent &orOther)=delete |
| CSoftwareComponent & | operator= (CSoftwareComponent &&orOther)=delete |
| virtual void | Init ()=0 |
| virtual bool | IsInitialized ()=0 |
Static Public Member Functions | |
| static void | ReceiveCanFrames () |
| CAN Listener. | |
Static Public Member Functions inherited from CSoftwareComponent< CCanHandler, 1U > | |
| static CCanHandler & | GetInstance (unsigned uInstanceIndex=0U) |
Public Attributes | |
| CanasInstance | oCanasInstance |
| CAN Aerospace instance object. | |
| SCanasPlatform | oCanasPlatform |
| CAN Aerospace Platform specific. | |
Static Public Attributes | |
| static constexpr int32_t | skiMallocSize { 1024 } |
| Static Malloc size in bytes. | |
| static constexpr uint32_t | skuMutexTout { 1 } |
| CAN Aerospace mutex timeout. | |
Static Public Attributes inherited from CSoftwareComponent< CCanHandler, 1U > | |
| static constexpr unsigned | skuInstanceCount_ |
Private Member Functions | |
| CCanHandler (CCanHandler &)=delete | |
| CCanHandler (CCanHandler &&)=delete | |
| CCanHandler & | operator= (const CCanHandler &orOther)=delete |
| CCanHandler & | operator= (CCanHandler &&orOther)=delete |
| CCanHandler () | |
| ~CCanHandler ()=default | |
Static Private Member Functions | |
| static CCanHandler & | getInstanceImpl (unsigned uInstanceIndex) |
| static int | drvSend (CanasInstance *opInstance, int iIface, const CanasCanFrame *kopFrame) |
| Send a message to the bus. | |
| static int | drvFilter (CanasInstance *opInstance, int iIface, const CanasCanFilterConfig *kopFilters, int iNumFilt) |
| Configure acceptance filters. | |
| static void * | staticMalloc (CanasInstance *opInstance, int iSize) |
| Allocates a chunk of memory. If the application does not require de-initialization features like unsubscription of unadvertisement, then dynamic memory is not needed at all. If this is the case, you can use a static pool allocator. This feature is useful for embedded systems where dynamic memory is not always available. | |
| static uint64_t | getTimestamp (CanasInstance *opInstance) |
| Returns current timestamp in microseconds. Any base value (uptime or UNIX time) will do. | |
Private Attributes | |
| bool | bIsInitialized_ { false } |
| osMutexAttr_t | oMutexAttr_ |
Friends | |
| class | CSoftwareComponent< CCanHandler, 1U > |
Additional Inherited Members | |
Protected Member Functions inherited from CSoftwareComponent< CCanHandler, 1U > | |
| CSoftwareComponent ()=default | |
| ~CSoftwareComponent ()=default | |
CAN General Handler software component.
|
privatedelete |
|
privatedelete |
|
private |
|
privatedefault |
|
staticprivate |
Configure acceptance filters.
| [in] | opInstance | Instance pointer |
| [in] | iIface | Interface index |
| [in] | kopFilters | Pointer to the filter configuration |
| [in] | iNumFilt | Number of configured filters |
|
inlinestaticprivate |
Send a message to the bus.
| [in] | opInstance | Instance pointer |
| [in] | iIface | Interface index |
| [in] | kopFrame | Pointer to the message to be sent |
|
staticprivate |
|
staticprivate |
Returns current timestamp in microseconds. Any base value (uptime or UNIX time) will do.
| [in] | opInstance | Instance pointer |
|
overridevirtual |
Initialize the software component.
Implements CSoftwareComponent< CCanHandler, 1U >.
|
overridevirtual |
Get initialization status of the software component.
Implements CSoftwareComponent< CCanHandler, 1U >.
|
privatedelete |
|
privatedelete |
|
static |
CAN Listener.
|
staticprivate |
Allocates a chunk of memory. If the application does not require de-initialization features like unsubscription of unadvertisement, then dynamic memory is not needed at all. If this is the case, you can use a static pool allocator. This feature is useful for embedded systems where dynamic memory is not always available.
| [in] | opInstance | Instance pointer |
| [in] | iSize | Size of the memory block required |
|
friend |
|
private |
| CanasInstance CCanHandler::oCanasInstance |
CAN Aerospace instance object.
| SCanasPlatform CCanHandler::oCanasPlatform |
CAN Aerospace Platform specific.
|
private |
|
staticconstexpr |
Static Malloc size in bytes.
|
staticconstexpr |
CAN Aerospace mutex timeout.