Framework Components Application Programming Interface (API)  fc-v07
Data Structures | Typedefs
Resource manager interface

Data Structures

struct  IRESMAN_Params
 Configuration Parameters required by the Resource Manager implementation. These can be extended by individual resource managers if required. More...
 
struct  IRESMAN_Fxns
 
struct  IRESMAN_ConstructArgs
 Abstract Protocol Construct Arguments structure/pointer definition. Arguments passed by the Resource manager to request a resource from a specific IRES Protocol will extend and supply the concrete definition. More...
 

Typedefs

typedef Bool( IRESMAN_PersistentAllocFxn) (IALG_MemRec *memTab, Int numRecs)
 Memory allocation function for all of ResMan and other IRES protocol's memory requirements. More...
 
typedef Void( IRESMAN_PersistentFreeFxn) (IALG_MemRec *memTab, Int numRecs)
 Memory free functions for all of ResMan and other IRES protocol's memory requirements. More...
 
typedef struct IRESMAN_Params IRESMAN_Params
 Configuration Parameters required by the Resource Manager implementation. These can be extended by individual resource managers if required. More...
 
typedef struct IRESMAN_Fxns IRESMAN_Fxns
 
typedef struct IRESMAN_ConstructArgs IRESMAN_ConstructArgs
 Abstract Protocol Construct Arguments structure/pointer definition. Arguments passed by the Resource manager to request a resource from a specific IRES Protocol will extend and supply the concrete definition. More...
 
typedef struct IRESMAN_ConstructFxns IRESMAN_ConstructFxns
 These functions are used to determine memory requirements for and initialize the IRES protocol's environment that will be allocated by the resource manager. More...
 

Detailed Description

The IRESMAN interface needs to be implemented and registered with the generic RMAN Resource Registry and is called by the Framework resource manager (RMAN) to manage corresponding IRES resources

Typedef Documentation

typedef Bool( IRESMAN_PersistentAllocFxn) (IALG_MemRec *memTab, Int numRecs)

Memory allocation function for all of ResMan and other IRES protocol's memory requirements.

typedef Void( IRESMAN_PersistentFreeFxn) (IALG_MemRec *memTab, Int numRecs)

Memory free functions for all of ResMan and other IRES protocol's memory requirements.

Configuration Parameters required by the Resource Manager implementation. These can be extended by individual resource managers if required.

typedef struct IRESMAN_Fxns IRESMAN_Fxns

Abstract Protocol Construct Arguments structure/pointer definition. Arguments passed by the Resource manager to request a resource from a specific IRES Protocol will extend and supply the concrete definition.

These functions are used to determine memory requirements for and initialize the IRES protocol's environment that will be allocated by the resource manager.

Remarks
These fxns are implemented by the IRES protocol that is used for a given channel (e.g, ACPY3), and are passed in the IRES_ProtocolArgs and IRES_ResmanProtocolConstructArgs structure to request a logical resource.
getName() - Called by the resource manager to query the name of the protocol to return to the generic Resource Manager RMAN
getRevision() - Called by the resource manager to query the revision of the protocol to return to the generic Resource Manager RMAN
getMemRecs() - Called by the resource manager when creating a resource handle to query the specific resource protocol's memory requirements. Since IRES is an abstract interface, the actual size of the handle can be extended by the specific resource protocol.
getNumMemRecs() - Called by the resource manager when creating a logical resource handle to obtain the number of IALG memory request descriptors the protocol uses to request memory for the resource handle.
constructHandle() - Called by the resource manager after allocating memory for the handle, so that the resource specific custom protocol initializes the handle.
destructHandle() - Called by the resource manager just before the resource is freed, to allow the custom IRES protocol to perform any required de-initialization.
Copyright 2016, Texas Instruments Incorporated