module ti.syslink.ipc.rtos.FrameQBufMgr
C synopsis target-domain sourced in ti/syslink/ipc/rtos/FrameQBufMgr.xdc
#include <ti/syslink/ipc/rtos/FrameQBufMgr.h>
Functions
UInt32 
Void
Functions common to all IFrameQBufMgr modules
Ptr 
Int32 
Int32 
Int32 
Int32 
Int32 
Int32 
Int32 
Int32 
Ptr 
UInt32 
Int32 
Int32 
Int32 
Int32 
FrameQBufMgr_invalidateFrameBuf// (FrameQBufMgr_Handle handle, Ptr frameBuf, UInt32 size, UInt8 bufNumInFrame);
Int32 
Bool 
Bool 
Int32 
Int32 
Int32 
FrameQBufMgr_translateAddr// (FrameQBufMgr_Handle handle, Ptr *dstAddr, IFrameQBufMgr_AddrType dstAddrType, Ptr srcAddr, IFrameQBufMgr_AddrType srcAddrType, IFrameQBufMgr_BufType bufType);
Int32 
Int32 
Int32 
Int32 
Functions common to all target instances
Functions common to all target modules
Defines
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
Typedefs
typedef enum
typedef struct
typedef enum
typedef struct
typedef struct
typedef struct
typedef enum
typedef struct
typedef struct
typedef struct
typedef struct
typedef struct
typedef enum
typedef Void 
typedef struct
typedef struct
typedef struct
typedef struct
typedef UInt32 
typedef struct
Constants
extern const UInt32 
extern const Assert_Id 
extern const Assert_Id 
extern const Assert_Id 
extern const Assert_Id 
extern const Assert_Id 
extern const UInt32 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const Error_Id 
extern const UInt32 
extern const UInt32 
extern const NameServer_Handle 
extern const UInt32 
extern const Bool 
 
 
const FrameQBufMgr_DYNAMIC_CREATE

Type of creation

C synopsis target-domain
#define FrameQBufMgr_DYNAMIC_CREATE (UInt32)0x4
 
 
const FrameQBufMgr_DYNAMIC_CREATE_USEDREGION

Type of creation

C synopsis target-domain
#define FrameQBufMgr_DYNAMIC_CREATE_USEDREGION (UInt32)0x8
 
 
const FrameQBufMgr_DYNAMIC_FRAME

Denotes Frame belongs to dynamic frame grougp that are added dynamically at runtime

C synopsis target-domain
#define FrameQBufMgr_DYNAMIC_FRAME (UInt8)2
 
 
const FrameQBufMgr_DYNAMIC_OPEN

Type of open

C synopsis target-domain
#define FrameQBufMgr_DYNAMIC_OPEN (UInt32)0x20
 
 
const FrameQBufMgr_FRAMEBUF_CPUACCESSFLAGS_BITOFFSET
C synopsis target-domain
#define FrameQBufMgr_FRAMEBUF_CPUACCESSFLAGS_BITOFFSET (UInt32)16
 
 
const FrameQBufMgr_INVALID

Type of open

C synopsis target-domain
#define FrameQBufMgr_INVALID (UInt32)0xFF
 
 
const FrameQBufMgr_MAX_FRAMEBUFS

Maximum number of frame buffers in a frame managed by in FrameQBufMgr instance

C synopsis target-domain
#define FrameQBufMgr_MAX_FRAMEBUFS (UInt32)8
 
 
const FrameQBufMgr_MAX_POOLS

Maximum number of Free Frame pools pools managed by FrameQBufMgr instance

C synopsis target-domain
#define FrameQBufMgr_MAX_POOLS (UInt32)64
 
 
const FrameQBufMgr_POOL_DYNAMIC_MAXFRAMES

Maximum number of dynbuffers managed by each buffer pool in FrameQBufMgr instance

C synopsis target-domain
#define FrameQBufMgr_POOL_DYNAMIC_MAXFRAMES (UInt32)1
 
 
const FrameQBufMgr_POOL_DYNAMIC_MAXHDRS

Maximum number of additional dynamic free headers managed by FrameQBufMgr instance for each Free Frame pool

C synopsis target-domain
#define FrameQBufMgr_POOL_DYNAMIC_MAXHDRS (UInt32)1
 
 
const FrameQBufMgr_POOL_MAXFRAMES

Maximum number of static free Frames managed by FrameQBufMgr instance for a Free Frame pool

C synopsis target-domain
#define FrameQBufMgr_POOL_MAXFRAMES (UInt32)32
 
 
const FrameQBufMgr_POOL_MAXHDRS

Maximum number of additional static free headers managed by FrameQBufMgr instance for each Free Frame pool

C synopsis target-domain
#define FrameQBufMgr_POOL_MAXHDRS (UInt32)64
 
 
const FrameQBufMgr_STATIC_CREATE

Type of creation

C synopsis target-domain
#define FrameQBufMgr_STATIC_CREATE (UInt32)0x1
 
 
const FrameQBufMgr_STATIC_CREATE_USEDREGION

Type of creation

C synopsis target-domain
#define FrameQBufMgr_STATIC_CREATE_USEDREGION (UInt32)0x2
 
 
const FrameQBufMgr_STATIC_FRAME

Denotes Frame belongs to static frames that are populated at create time of the instance

C synopsis target-domain
#define FrameQBufMgr_STATIC_FRAME (UInt8)1
 
 
const FrameQBufMgr_STATIC_OPEN

Type of open

C synopsis target-domain
#define FrameQBufMgr_STATIC_OPEN (UInt32)0x10
 
 
const FrameQBufMgr_VERSION
C synopsis target-domain
#define FrameQBufMgr_VERSION (UInt32)1
 
 
enum FrameQBufMgr_AddrType

Enumerations to indicate address types used for translation

C synopsis target-domain
typedef enum FrameQBufMgr_AddrType {
    FrameQBufMgr_AddrType_Virtual,
    FrameQBufMgr_AddrType_Portable,
    FrameQBufMgr_AddrType_EndValue
} FrameQBufMgr_AddrType;
 
VALUES
AddrType_Virtual — Virtual address on calling process on DSP where MMU is not configured it could be the physical address.
AddrType_Portable — This is the shared region address incase sharedmemory manager plugged in to frameQbufMgr. In case of tiler it could be the tiler specific portable address
AddrType_EndValue — End delimiter indicating start of invalid values for this enum
 
enum FrameQBufMgr_BufType

Enumerations to indicate address types used for translation

C synopsis target-domain
typedef enum FrameQBufMgr_BufType {
    FrameQBufMgr_BUF_FRAMEHEADER,
    FrameQBufMgr_BUF_FRAMEBUF,
    FrameQBufMgr_BUF_ENDVALUE
} FrameQBufMgr_BufType;
 
VALUES
BUF_FRAMEHEADER — Denotes buffer is of type used for frame headers.
BUF_FRAMEBUF — Denotes buffer is of type used for frame buffers
AddrType_EndValue — End delimiter indicating start of invalid values for this enum
 
enum FrameQBufMgr_CpuAccessFlags

Enumeration of CPU access flags for frame buffers. For frame headers CPUACCESS is assumed to be TRUE

C synopsis target-domain
typedef enum FrameQBufMgr_CpuAccessFlags {
    FrameQBufMgr_FRAMEBUF0_CPUACCESS,
    FrameQBufMgr_FRAMEBUF1_CPUACCESS,
    FrameQBufMgr_FRAMEBUF2_CPUACCESS,
    FrameQBufMgr_FRAMEBUF3_CPUACCESS,
    FrameQBufMgr_FRAMEBUF4_CPUACCESS,
    FrameQBufMgr_FRAMEBUF5_CPUACCESS,
    FrameQBufMgr_FRAMEBUF6_CPUACCESS,
    FrameQBufMgr_FRAMEBUF7_CPUACCESS
} FrameQBufMgr_CpuAccessFlags;
 
VALUES
FRAMEBUF0_CPUACCESS — If specified first frame buffer is accessed through CPU(direct memory access).
FRAMEBUF1_CPUACCESS — If specified second frame buffer is accessed through CPU(direct memory access).
FRAMEBUF2_CPUACCESS — If specified third frame buffer is accessed through CPU(direct memory access).
FRAMEBUF3_CPUACCESS — If specified fourth frame buffer is accessed through CPU(direct memory access).
FRAMEBUF4_CPUACCESS — If specified fifth frame buffer is accessed through CPU(direct memory access).
FRAMEBUF5_CPUACCESS — If specified sixth frame buffer is accessed through CPU(direct memory access).
FRAMEBUF6_CPUACCESS — If specified seventh frame buffer is accessed through CPU(direct memory access).
FRAMEBUF7_CPUACCESS — If specified eigth frame buffer is accessed through CPU(direct memory access).
 
enum FrameQBufMgr_Interface

Enumeration of FrameQBufMgr interface types.Denotes different implementation types

C synopsis target-domain
typedef enum FrameQBufMgr_Interface {
    FrameQBufMgr_INTERFACE_SHAREDMEM,
    FrameQBufMgr_INTERFACE_TILERMEM,
    FrameQBufMgr_INTERFACE_NONE
} FrameQBufMgr_Interface;
 
VALUES
INTERFACE_SHAREDMEM — FrameQNufMgr implementation (FrameQBufMgr_ShMem Implementation) on shared memory.
 
typedef FrameQBufMgr_Frame
C synopsis target-domain
typedef IFrame_FrameHeader *FrameQBufMgr_Frame;
 
 
typedef FrameQBufMgr_NotifyFunc

Prototype of the FrameQbufMgr call back function

C synopsis target-domain
typedef Void (*FrameQBufMgr_NotifyFunc)(IFrameQBufMgr_Handle,Ptr,UInt16);
 
 
typedef FrameQBufMgr_Status

type used for API return code

C synopsis target-domain
typedef UInt32 FrameQBufMgr_Status;
 
 
struct FrameQBufMgr_Attrs

Shared control strucrue for the instance attributes

C synopsis target-domain
typedef struct FrameQBufMgr_Attrs {
    UInt32 status;
    UInt32 version;
    UInt32 localProtect;
    UInt32 remoteProtect;
    Ptr gateMPAddr;
    Char name[IFrameQBufMgr_MAX_NAMELEN];
    Ptr sharedDataBufAddr;
    UInt32 sharedAddrSize;
    UInt32 numFreeFramePools;
    UInt32 numNotifyEntries;
    UInt16 entryId;
} FrameQBufMgr_Attrs;
 
FIELDS
status — Flag denoting whether instance is created or not.
version — Version of the instance.
localProtect — Local protection type.See GateMP.LocalProtect
remoteProtect — Remote protection types.See GateMP.RemoteProtect
gateMPAddr — GateMP address (shm safe)
name — Name of the instance.
sharedDataBufAddr — Holds Data buffer start address provided at instance crate time.
sharedAddrSize — The size of the data buffer.
FILED
Number of free frame pools maintained by this instance.
Unique id of the instance in the system. Combination of creator procId and instance no on that processor.
 
struct FrameQBufMgr_CommonOpenParams

Common paramters requiredto open a FrameQBufMgr instance of any implementation

C synopsis target-domain
typedef struct FrameQBufMgr_CommonOpenParams {
    String name;
    UInt32 cpuAccessFlags;
    Ptr sharedAddr;
    IGateProvider_Handle gate;
} FrameQBufMgr_CommonOpenParams;
 
FIELDS
name — Name of the instance to open.
— (cacheFlags) Cache flags to perform cache operations .
sharedAddr — Shared addr in case open by address is required.
gate — gate for protection.
 
struct FrameQBufMgr_Config

mouduleconfig structure

C synopsis target-domain
typedef struct FrameQBufMgr_Config {
    UInt32 eventNo;
    Bool useNameServer;
    Bool maxInstances;
} FrameQBufMgr_Config;
 
FIELDS
sharedAddr — Shared region address for module initialization.
sharedAddrSize — Size of the shared region .
— (cacheFlags) Cache flags to perform cache operations on module wide shared control structure.
eventNo — The event number used for notification.
name — Name for the module.
shCtrlOpenFlag — Boolean flag if set to FALSE, populate the shared control info required between processors for this module. If it set to TRUE, module initialize call opens the shared control info.Ideally master processor set this flag to FALSE to crate the shared control info.
 
struct FrameQBufMgr_ControlStruct

Shared control structure for the FrameQBufMgr instance

C synopsis target-domain
typedef struct FrameQBufMgr_ControlStruct {
    IFrameQBufMgr_Attrs attrs;
} FrameQBufMgr_ControlStruct;
 
FIELDS
attrs — Shared control info of type Attrs.
bufPool — Array of buffer pools of type bufPoolList.
 
struct FrameQBufMgr_CreateParams

Structure defining common instance parameters for the FrameQ module.Should be the first element in the create params strcture of the actual implementation

C synopsis target-domain
typedef struct FrameQBufMgr_CreateParams {
    UInt32 size;
    IFrameQBufMgr_Interface ctrlInterfaceType;
    String name;
    Bool openFlag;
} FrameQBufMgr_CreateParams;
 
FIELDS
size — Size of the Create params structure(Should be the size of the actual implementation's Create params structure in which this FrameQ_CreateParams is the first element.
interface — type of implementation. See Interface.
name — Name of the instance.
openFlag — Denotes whether create should actually create/open instance.
 
struct FrameQBufMgr_FrameBufInfo

Structure of the framebuffer info in frame

C synopsis target-domain
typedef struct FrameQBufMgr_FrameBufInfo {
    UInt32 bufPtr;
    UInt32 bufSize;
    UInt32 startOffset;
    UInt32 validSize;
    UInt32 pixelFormat;
    UInt32 height;
    UInt32 width;
    UInt32 stride;
} FrameQBufMgr_FrameBufInfo;
 
FIELDS
bufPtr — Pointer to the frame buffer.
bufSize — Size of the buffer.
startOffSet — Start offset in the buffer from where valid data starts.
validSize — Valid size in the buffer from the zeroth offset in the frame buffer.
height — Pointer to the frame buffer.
width — Size of the buffer.
stride — Multiple of page size and needs to be added to Tile start address in order to get the address starting on next row in same tile.
 
struct FrameQBufMgr_FrameBufParams

Structure defining common frame buf params for tiled as well as non tiled buffers

C synopsis target-domain
typedef struct FrameQBufMgr_FrameBufParams {
    UInt32 size;
    UInt32 pixelFormat;
    UInt32 height;
    UInt32 width;
    UInt32 align;
} FrameQBufMgr_FrameBufParams;
 
FIELDS
size — size for non tiled buffer. Structure defining parameters for the Tiled data buffers
pixelFormat — pixel format for tiled buffer.
height — height .
width — width .
stride — stride of container, must be multiple of page size.
align — Alignment of the buffer .
 
struct FrameQBufMgr_FrameHeader

Structure of the base frame header. FrameQ maintains list of frames to be retrieved by FrameQ reader client. Application is expected to use Helper API to extract fileds and exteneded header pointer

C synopsis target-domain
typedef struct FrameQBufMgr_FrameHeader {
    UInt32 reserved0;
    UInt32 reserved1;
    UInt16 baseHeaderSize;
    UInt16 headerSize;
    UInt32 frmAllocaterId;
    UInt32 frameBufType;
    UInt8 freeFrmQueueNo;
    UInt8 numFrameBuffers;
    IFrame_FrameBufInfo frameBufInfo[1];
} FrameQBufMgr_FrameHeader;
 
FIELDS
baseHeaderSize — Size of the base frame header.
headerSize — Size of the frame header(total size of base header and extended header).
frmAllocaterId — Denotes the FrameQBufMgr Id from which frame is allocated.
freeFrmQueueNo — Free quque No from which frame is allocated in FrameQBufMgr.
numFrameBuffers — Number of framebuffers in a frame.
frameBufInfo — Information of Frame buffer. FrameBufInfo
 
struct FrameQBufMgr_FreeFramePoolObj

Free Frame pool structure to keep track of the free frames in a frame pool

C synopsis target-domain
typedef struct FrameQBufMgr_FreeFramePoolObj {
    UInt32 numFrms;
    UInt32 freeFrms;
    UInt32 numFrmHdrBufs;
    UInt32 freeFrmHdrBufs;
    UInt32 frmHdrBufSize;
    UInt32 numBufsInFrame;
    UInt32 numDynamicHdrBufs;
    UInt32 freeDynamicHdrBufs;
    UInt32 numDynamicFrames;
    UInt32 freeDynamicFrames;
    UInt32 frmStartAddrp;
    UInt32 frmEndAddrp;
    UInt32 hdrBufStartAddrp;
    UInt32 hdrBufEndAddrp;
    UInt32 frmBufsStartAddrp;
    UInt32 frmBufsEndAddrp;
    UInt32 frmBufSize[IFrameQBufMgr_MAX_FRAMEBUFS];
    UInt32 frmRefCnt[IFrameQBufMgr_POOL_MAXFRAMES];
    UInt32 dynFrame[IFrameQBufMgr_POOL_DYNAMIC_MAXFRAMES];
    UInt32 dynFrmRefCnt[IFrameQBufMgr_POOL_DYNAMIC_MAXFRAMES];
    UInt32 hdrBuf_refCntIndex[IFrameQBufMgr_POOL_MAXHDRS];
    UInt32 dynHdrBuf_refCntIndex[IFrameQBufMgr_POOL_DYNAMIC_MAXHDRS];
    UInt32 dynHdrBufs[IFrameQBufMgr_POOL_DYNAMIC_MAXHDRS];
    Bool hdrBufIsUsed[IFrameQBufMgr_POOL_MAXHDRS];
    Bool dynHdrBufIsUsed[IFrameQBufMgr_POOL_DYNAMIC_MAXHDRS];
    UInt8 hdrBuf_refCntIndexType[IFrameQBufMgr_POOL_MAXHDRS];
    UInt8 dynHdrBuf_refCntIndexType[IFrameQBufMgr_POOL_DYNAMIC_MAXHDRS];
} FrameQBufMgr_FreeFramePoolObj;
 
 
struct FrameQBufMgr_NotifyParams

Structure defining notification parameter structure

C synopsis target-domain
typedef struct FrameQBufMgr_NotifyParams {
    SysLink_NotifyType notifyType;
    UInt32 watermark;
    IFrameQBufMgr_NotifyFunc cbFxnPtr;
    Ptr cbContext;
    Ptr cbClientHandle;
} FrameQBufMgr_NotifyParams;
 
FIELDS
notifyType — notification type.See SysLink.NotifyType.
watermark — Minumum number of free frames required to generate notification Same water mark for all the individual freeFramePools in the set.
cbFxnPtr — Cacll back function.
cbContext — Context pointer that needs to be passed to call back function.
cbClientHandle — Handle that needs to be passed as first arg to call back.Ideally this should be callers client handle.
 
struct FrameQBufMgr_ShMem_InstNameServerEntryParams

Structure defining Additional specific parameters that name server maintains alonh with the interface type

C synopsis target-domain
typedef struct FrameQBufMgr_ShMem_InstNameServerEntryParams {
    Ptr sharedAddr;
    UInt32 sharedAddrSize;
    Ptr instGateMPAddr;
    UInt8 frmBuf_regionId;
    UInt8 hdrBuf_regionId;
    Ptr cliGateMPAddr;
} FrameQBufMgr_ShMem_InstNameServerEntryParams;
 
FIELDS
sharedAddr — Virtual shared Region Address for control structure.
sharedAddrSize — Size of the shared memory for control structure.
instGateMPAddr — Instance gateMP shared address in SharedRegion_SRPtr format.Valid only if it is created internally.
memMgrType_HdrBufs — MemMgr type configured for Header buffers.
memMgrType_FrmBufs — MemMgr type configured for Frame buffers.
allocaterName_HdrBufs — Name of the HeapMemMp instance to be used Header buffer allocation. TODO: need to check if it is valid for Tiler
allocaterName_FrmBufs — Name of the HeapMemMp instance to be used frame buffer allocation. TODO: need to check if it is valid for Tiler
 
config FrameQBufMgr_A_InvalidCreatorProcId  // module-wide

Assert raised when creator processor id of the instance is not valid

C synopsis target-domain
extern const Assert_Id FrameQBufMgr_A_InvalidCreatorProcId;
 
 
config FrameQBufMgr_A_InvalidInstNo  // module-wide

Assert raised when Inst No of the instance is not valid

C synopsis target-domain
extern const Assert_Id FrameQBufMgr_A_InvalidInstNo;
 
 
config FrameQBufMgr_A_invalidParams  // module-wide

Assert raised when an invalid parameter(s) is passed into a function

C synopsis target-domain
extern const Assert_Id FrameQBufMgr_A_invalidParams;
 
 
config FrameQBufMgr_A_nullHandle  // module-wide

Assert raised when null handle is returned from modules

C synopsis target-domain
extern const Assert_Id FrameQBufMgr_A_nullHandle;
 
 
config FrameQBufMgr_A_nullPointer  // module-wide

Assert raised when a null pointer needs to be dereferenced

C synopsis target-domain
extern const Assert_Id FrameQBufMgr_A_nullPointer;
 
 
config FrameQBufMgr_Attrs_STRUCT_PADDING  // module-wide

Padding required for the Attrs structure

C synopsis target-domain
extern const UInt32 FrameQBufMgr_Attrs_STRUCT_PADDING;
 
 
config FrameQBufMgr_CACHE_LINESIZE  // module-wide

Cache line size

C synopsis target-domain
extern const UInt32 FrameQBufMgr_CACHE_LINESIZE;
 
 
config FrameQBufMgr_E_CacheAlign  // module-wide

Error raised when buffersize is not aligned to Cache line size

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_CacheAlign;
 
 
config FrameQBufMgr_E_ClientNotifyMgrCreate  // module-wide

Error raised when ClientNotifyMgr Create failed

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_ClientNotifyMgrCreate;
 
 
config FrameQBufMgr_E_ClientNotifyMgrOpen  // module-wide

Error raised when ClientNotifyMgrOpen failed

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_ClientNotifyMgrOpen;
 
 
config FrameQBufMgr_E_FrameQBufMgrCreateFail  // module-wide

Error raised when internal FrameQBufMgr create failed

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_FrameQBufMgrCreateFail;
 
 
config FrameQBufMgr_E_FrameQBufMgrNotCreated  // module-wide

Error raised when FrameQBufMgr is not created

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_FrameQBufMgrNotCreated;
 
 
config FrameQBufMgr_E_FrameQBufMgrNotFound  // module-wide

Error raised when FrameQBufMgr is not Found in NameServer

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_FrameQBufMgrNotFound;
 
 
config FrameQBufMgr_E_FrameQBufMgrOpenFail  // module-wide

Error raised when FrameQBufMgr open failed

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_FrameQBufMgrOpenFail;
 
 
config FrameQBufMgr_E_InstanceExists  // module-wide

Error raised when an instance already exists

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_InstanceExists;
 
 
config FrameQBufMgr_E_InvAddr  // module-wide

Error raised when Insufficient shared addrprovided to create call

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_InvAddr;
 
 
config FrameQBufMgr_E_InvSize  // module-wide

Error raised when Insufficient shared memory provided to create call

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_InvSize;
 
 
config FrameQBufMgr_E_InvalidInterfaceType  // module-wide

Error raised when an invalid interface type mentioned in params

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_InvalidInterfaceType;
 
 
config FrameQBufMgr_E_InvalidParams  // module-wide

Error raised when an invalid parameter(s) is passed into a function

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_InvalidParams;
 
 
config FrameQBufMgr_E_maxInstances  // module-wide

Error raised when max instances limit is reached

C synopsis target-domain
extern const Error_Id FrameQBufMgr_E_maxInstances;
 
 
config FrameQBufMgr_MAXINSTANCES  // module-wide

Maximum number of instances that can be created for this module

C synopsis target-domain
extern const UInt32 FrameQBufMgr_MAXINSTANCES;
 
 
config FrameQBufMgr_MAX_NAMELEN  // module-wide

Maximum length of the name strings

C synopsis target-domain
extern const UInt32 FrameQBufMgr_MAX_NAMELEN;
 
 
config FrameQBufMgr_NOTIFY_RESERVED_EVENTNO  // module-wide

Event Number to be used by FrameQBufMgr module

C synopsis target-domain
extern const UInt32 FrameQBufMgr_NOTIFY_RESERVED_EVENTNO;
 
 
config FrameQBufMgr_nameServer  // module-wide

Handle to the name server

C synopsis target-domain
extern const NameServer_Handle FrameQBufMgr_nameServer;
 
 
config FrameQBufMgr_usedefaultgate  // module-wide

If set to true FrameQBufMgr instances will use dafault gate set in FrameQBufMgr. If default gate is not set in FrameQBufMgr, it uses GateMP's default gate. Set it to zero if FrameQBufMgr needs to create gate for a instance (remoteProtect and localProtect flags should be valid in params in this case)

C synopsis target-domain
extern const Bool FrameQBufMgr_usedefaultgate;
 
 
FrameQBufMgr_getBaseHeaderSize()  // module-wide

API to open the created instance and to get a handle to it

C synopsis target-domain
UInt32 FrameQBufMgr_getBaseHeaderSize(UInt8 numFrameBufs);
 
ARGUMENTS
handlePtr — Handle to the instance will be returned through this pointer.
openParams — open parameters specific implementation.
Function to close the dynamically opened instance using open call.
numFrameBufs — Number of frame buffers in frame.
RETURNS
returns 0 if successfully registered the call back function.
Retruns the base header size of frame based on the number of frame buffers that will be contained in frame.
Base frame header size in bytes.
DETAILS
The instance must be created usng create call before opening it.
 
FrameQBufMgr_getConfig()  // module-wide

Initialize the passed pointer with the current parameters

C synopsis target-domain
Int32 FrameQBufMgr_getConfig(IFrameQBufMgr_Config *cfgParams);
 
ARGUMENTS
cfgParams — Pointer to parameter structure to be initialized.
 
FrameQBufMgr_getHandle()  // module-wide

Function to create a nameServer

C synopsis target-domain
Ptr FrameQBufMgr_getHandle(UInt32 id);
 
ARGUMENTS
id — Id of the FrameQBufMgr instance.
RETURNS
Returns instance handle if it is created or opened on the caller processor.
Module-Wide Built-Ins

C synopsis target-domain
Types_ModuleId FrameQBufMgr_Module_id();
// Get this module's unique id
 
Bool FrameQBufMgr_Module_startupDone();
// Test if this module has completed startup
 
IHeap_Handle FrameQBufMgr_Module_heap();
// The heap from which this module allocates memory
 
Bool FrameQBufMgr_Module_hasMask();
// Test whether this module has a diagnostics mask
 
Bits16 FrameQBufMgr_Module_getMask();
// Returns the diagnostics mask for this module
 
Void FrameQBufMgr_Module_setMask(Bits16 mask);
// Set the diagnostics mask for this module
Instance Object Types

C synopsis target-domain
typedef struct FrameQBufMgr_Object FrameQBufMgr_Object;
// Opaque internal representation of an instance object
 
typedef FrameQBufMgr_Object *FrameQBufMgr_Handle;
// Client reference to an instance object
 
typedef struct FrameQBufMgr_Struct FrameQBufMgr_Struct;
// Opaque client structure large enough to hold an instance object
 
FrameQBufMgr_Handle FrameQBufMgr_handle(FrameQBufMgr_Struct *structP);
// Convert this instance structure pointer into an instance handle
 
FrameQBufMgr_Struct *FrameQBufMgr_struct(FrameQBufMgr_Handle handle);
// Convert this instance handle into an instance structure pointer
Instance Config Parameters

C synopsis target-domain
typedef struct FrameQBufMgr_Params {
// Instance config-params structure
    IInstance_Params *instance;
    // Common per-instance configs
    FrameQBufMgr_CreateParams commonCreateParams;
    // 
    Ptr impParams;
    // Pointer to implementation specific parameters
    UInt32 impParamsSize;
    // Pointer to implementation specific parameters
} FrameQBufMgr_Params;
 
Void FrameQBufMgr_Params_init(FrameQBufMgr_Params *params);
// Initialize this config-params structure with supplier-specified defaults before instance creation
 
config FrameQBufMgr_commonCreateParams  // instance
C synopsis target-domain
      ...
    FrameQBufMgr_CreateParams commonCreateParams;
 
 
config FrameQBufMgr_impParams  // instance

Pointer to implementation specific parameters

C synopsis target-domain
      ...
    Ptr impParams;
 
 
config FrameQBufMgr_impParamsSize  // instance

Pointer to implementation specific parameters

C synopsis target-domain
      ...
    UInt32 impParamsSize;
 
 
FrameQBufMgr_add()  // instance

Function to add free frames dynamically which are allocated out side of FrmaeQbufMgr through the same memory manager

C synopsis target-domain
Ptr FrameQBufMgr_add(FrameQBufMgr_Handle handle, UInt8 freeQId);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
freeQId — freeFrame Pool No to whcih the frame needs to be added.
framePtr — frame to be added.
RETURNS
returns 0 if successfully added the frame.
 
FrameQBufMgr_alloc()  // instance

Function to allocate a buffer from the FrameQBufMgr instance

C synopsis target-domain
Int32 FrameQBufMgr_alloc(FrameQBufMgr_Handle handle, IFrameQBufMgr_Frame *frame);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
frame — Location to receive the allocated frame pointer.
RETURNS
returns 0 if successfully allocated the buffer.
 
FrameQBufMgr_allocv()  // instance

Function to allocate multiple frames from the FrameQBufMgr instance from the free Frame pool nos given

C synopsis target-domain
Int32 FrameQBufMgr_allocv(FrameQBufMgr_Handle handle, IFrameQBufMgr_Frame framePtr[], UInt32 freeQId[], UInt8 *numFrames);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
framePtr — array of pointers to receive allocate frame pointers.
freeQId — array of freeFrame poolNos to allocate frames from. if API retruns success, this represents ths actual size of the buffer allocated.
numFrames — Number of frames to allocate.
RETURNS
returns value greater than zero if successfully allocated frames.
 
FrameQBufMgr_control()  // instance

Provides a hook to perform implementation dependent operation

C synopsis target-domain
Int32 FrameQBufMgr_control(FrameQBufMgr_Handle handle, Int32 cmd, Ptr arg);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
cmd — command to exectue.
arg — argument of type void*.
 
FrameQBufMgr_dup()  // instance

API to duplicate the given frame i.e it increments the corresponding frames 's reference count.It internally allocates headers for the duped frames.It fails if it is not able to dup all the frames

C synopsis target-domain
Int32 FrameQBufMgr_dup(FrameQBufMgr_Handle handle, IFrameQBufMgr_Frame framePtr, IFrameQBufMgr_Frame dupedFramePtr[], UInt32 numDupedFrames);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
buf — Pointer to the frame which needs to be duplicated.
size — Size of the buffer.
dupCount — Duplication count.
 
FrameQBufMgr_dupv()  // instance

API to duplicate the given frames i.e it increments the corresponding frames 's reference count.It internally allocates headers for the duped frames.It fails if it is not able to dup all the frames

C synopsis target-domain
Int32 FrameQBufMgr_dupv(FrameQBufMgr_Handle handle, IFrameQBufMgr_Frame framePtr[], IFrameQBufMgr_Frame **dupedFramePtr, UInt32 numDupedFrames, UInt32 numFrames);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
buf — Pointer to the frames which needs to be duplicated.
size — Size of the buffer.
dupCount — Duplication count.
 
FrameQBufMgr_free()  // instance

Function to free frame

C synopsis target-domain
Int32 FrameQBufMgr_free(FrameQBufMgr_Handle handle, IFrameQBufMgr_Frame frame);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
frame — frame to be freed.
RETURNS
returns 0 if successfully freed the allocated buffer.
 
FrameQBufMgr_freev()  // instance

Function to free frames

C synopsis target-domain
Int32 FrameQBufMgr_freev(FrameQBufMgr_Handle handle, IFrameQBufMgr_Frame framePtr[], UInt32 numFrames);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
framePtr — array of frames to be freed.
RETURNS
returns 0 if successfully freed the allocated frames.
 
FrameQBufMgr_getId()  // instance

Function to get the id of the instance

C synopsis target-domain
UInt32 FrameQBufMgr_getId(FrameQBufMgr_Handle handle);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
RETURNS
Returns FrameQBufMgr Id for the handle.
 
FrameQBufMgr_getNumFreeFrames()  // instance

Function to get the number of free frames available in the in FrameQbufMgr's FreeFramePool 0. The returned number free frame may not exist in the frameQbufMgr after this call.This is because if any allocs are done by the other FrameQ writers on the same FrameQBufMgr.If frees are not other frameQ writers the free Frames would be even more than the value that we have got

C synopsis target-domain
Int32 FrameQBufMgr_getNumFreeFrames(FrameQBufMgr_Handle handle, UInt32 *numFreeFrames);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
numFrames — Outputparameter indicates number of free frames .
RETURNS
returns 0 if successfully returned the number of free frames.
 
FrameQBufMgr_getvNumFreeFrames()  // instance

Function to get the number of free frames available in the in the given Free FramePool

C synopsis target-domain
Int32 FrameQBufMgr_getvNumFreeFrames(FrameQBufMgr_Handle handle, UInt32 numFreeFrames[], UInt8 freeFramePoolNo[], UInt8 numFreeFramePools);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
numFreeFrames — Outputparameter indicates number of free frames in each given free quque at that instance.
filledQId — Array of free Queue ids(freeFramePool nos).
numFreeQids — Number of free queueids same as freeFrame PoolNo of plugged in FrameQBufMgr .
RETURNS
returns 0 if successfully returned the frames.
 
FrameQBufMgr_invalidate()  // instance
C synopsis target-domain
Int32 FrameQBufMgr_invalidate(FrameQBufMgr_Handle handle, IFrameQBufMgr_Frame frame);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
 
FrameQBufMgr_invalidateFrameBuf()  // instance
C synopsis target-domain
Int32 FrameQBufMgr_invalidateFrameBuf(FrameQBufMgr_Handle handle, Ptr frameBuf, UInt32 size, UInt8 bufNumInFrame);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
 
FrameQBufMgr_invalidateHeaderBuf()  // instance

invalidates contents of buffer . buffer is treated as frame header

C synopsis target-domain
Int32 FrameQBufMgr_invalidateHeaderBuf(FrameQBufMgr_Handle handle, Ptr headerBuf);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
 
FrameQBufMgr_isCacheEnabledForFrameBuf()  // instance

Function to determine whether cache calls(writeback/invalidate) are enabled for frame buffers

C synopsis target-domain
Bool FrameQBufMgr_isCacheEnabledForFrameBuf(FrameQBufMgr_Handle handle, UInt8 framebufIndex);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
 
FrameQBufMgr_isCacheEnabledForHeaderBuf()  // instance

Function to determine whether cache calls(writeback/invalidate) are enabled for frame headers

C synopsis target-domain
Bool FrameQBufMgr_isCacheEnabledForHeaderBuf(FrameQBufMgr_Handle handle);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
 
FrameQBufMgr_registerNotifier()  // instance

Function to Register notification with the instance. It internally registers notification with the individual free queues(free frame pools). If alloc on free queue 0 failed,Notification will be generated if free frames in that queue becomes more than watermark(all the free frames in that queue)

C synopsis target-domain
Int32 FrameQBufMgr_registerNotifier(FrameQBufMgr_Handle handle, IFrameQBufMgr_NotifyParams *notifyParams);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
notifyParams — Pointer to NotifyParams structure.
RETURNS
returns >0 if successfully registered the call back function.
 
FrameQBufMgr_remove()  // instance

Function to remove dynamically added frames which are allocated out side of FrmaeQbufMgr through the same memory managers that are plugged in to FrameQBufMgr instance

C synopsis target-domain
Int32 FrameQBufMgr_remove(FrameQBufMgr_Handle handle, UInt8 freeQId, IFrameQBufMgr_Frame framePtr);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
freeQId — freeFrame Pool No to whcih the frame needs to be added.
framePtr — frame to be added.
RETURNS
returns 0 if successfully added the frame.
 
FrameQBufMgr_translateAddr()  // instance
C synopsis target-domain
Int32 FrameQBufMgr_translateAddr(FrameQBufMgr_Handle handle, Ptr *dstAddr, IFrameQBufMgr_AddrType dstAddrType, Ptr srcAddr, IFrameQBufMgr_AddrType srcAddrType, IFrameQBufMgr_BufType bufType);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
 
FrameQBufMgr_unregisterNotifier()  // instance

Function to unregister the registered call back function with the instance.

C synopsis target-domain
Int32 FrameQBufMgr_unregisterNotifier(FrameQBufMgr_Handle handle);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
RETURNS
Returns positive value if successfully unregistered the call back function.
 
FrameQBufMgr_writeBack()  // instance

Write back the contents of a frame including frame buffers

C synopsis target-domain
Int32 FrameQBufMgr_writeBack(FrameQBufMgr_Handle handle, IFrameQBufMgr_Frame frame);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
 
FrameQBufMgr_writeBackFrameBuf()  // instance

Write back the contents of buffer . buffe is treated as frame buffer. bufNumInFrame denotes buffer number in the frame.This is to identify the cache flags and cpu access flags for the buffer

C synopsis target-domain
Int32 FrameQBufMgr_writeBackFrameBuf(FrameQBufMgr_Handle handle, Ptr frameBuf, UInt32 size, UInt8 bufNumInFrame);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
 
FrameQBufMgr_writeBackHeaderBuf()  // instance

Write back the contents of buffer.buffer is treated as frame header

C synopsis target-domain
Int32 FrameQBufMgr_writeBackHeaderBuf(FrameQBufMgr_Handle handle, Ptr headerBuf);
 
ARGUMENTS
handle — handle of a previously-created FrameQBufMgr instance object
Instance Convertors

C synopsis target-domain
IFrameQBufMgr_Handle FrameQBufMgr_Handle_upCast(FrameQBufMgr_Handle handle);
// unconditionally move one level up the inheritance hierarchy
 
FrameQBufMgr_Handle FrameQBufMgr_Handle_downCast(IFrameQBufMgr_Handle handle);
// conditionally move one level down the inheritance hierarchy; NULL upon failure
Instance Built-Ins

C synopsis target-domain
Int FrameQBufMgr_Object_count();
// The number of statically-created instance objects
 
FrameQBufMgr_Handle FrameQBufMgr_Object_get(FrameQBufMgr_Object *array, Int i);
// The handle of the i-th statically-created instance object (array == NULL)
 
FrameQBufMgr_Handle FrameQBufMgr_Object_first();
// The handle of the first dynamically-created instance object, or NULL
 
FrameQBufMgr_Handle FrameQBufMgr_Object_next(FrameQBufMgr_Handle handle);
// The handle of the next dynamically-created instance object, or NULL
 
IHeap_Handle FrameQBufMgr_Object_heap();
// The heap used to allocate dynamically-created instance objects
 
Types_Label *FrameQBufMgr_Handle_label(FrameQBufMgr_Handle handle, Types_Label *buf);
// The label associated with this instance object
 
String FrameQBufMgr_Handle_name(FrameQBufMgr_Handle handle);
// The name of this instance object
 
XDCscript usage meta-domain sourced in ti/syslink/ipc/rtos/FrameQBufMgr.xdc
var FrameQBufMgr = xdc.useModule('ti.syslink.ipc.rtos.FrameQBufMgr');
local proxy modules
        FrameQBufMgr.GateProxy.delegate$ = IGateProvider.Module null
        FrameQBufMgr.GateProxy.abstractInstances$ = false
module-wide constants & types
    const FrameQBufMgr.INVALID// Type of open = 0xFF;
    const FrameQBufMgr.VERSION//  = 1;
 
        const FrameQBufMgr.AddrType_Virtual;
        const FrameQBufMgr.AddrType_Portable;
        const FrameQBufMgr.AddrType_EndValue;
 
        const FrameQBufMgr.BUF_FRAMEHEADER;
        const FrameQBufMgr.BUF_FRAMEBUF;
        const FrameQBufMgr.BUF_ENDVALUE;
 
        const FrameQBufMgr.FRAMEBUF0_CPUACCESS;
        const FrameQBufMgr.FRAMEBUF1_CPUACCESS;
        const FrameQBufMgr.FRAMEBUF2_CPUACCESS;
        const FrameQBufMgr.FRAMEBUF3_CPUACCESS;
        const FrameQBufMgr.FRAMEBUF4_CPUACCESS;
        const FrameQBufMgr.FRAMEBUF5_CPUACCESS;
        const FrameQBufMgr.FRAMEBUF6_CPUACCESS;
        const FrameQBufMgr.FRAMEBUF7_CPUACCESS;
 
        const FrameQBufMgr.INTERFACE_SHAREDMEM;
        const FrameQBufMgr.INTERFACE_TILERMEM;
        const FrameQBufMgr.INTERFACE_NONE;
 
        obj.status = UInt32  ...
        obj.version = UInt32  ...
        obj.localProtect = UInt32  ...
        obj.remoteProtect = UInt32  ...
        obj.gateMPAddr = Ptr  ...
        obj.name = Char[IFrameQBufMgr.MAX_NAMELEN]  ...
        obj.sharedDataBufAddr = Ptr  ...
        obj.sharedAddrSize = UInt32  ...
        obj.numFreeFramePools = UInt32  ...
        obj.numNotifyEntries = UInt32  ...
        obj.entryId = UInt16  ...
 
        obj.name = String  ...
        obj.cpuAccessFlags = UInt32  ...
        obj.sharedAddr = Ptr  ...
        obj.gate = IGateProvider.Handle  ...
 
        obj.eventNo = UInt32  ...
        obj.useNameServer = Bool  ...
        obj.maxInstances = Bool  ...
 
        obj.attrs = IFrameQBufMgr.Attrs  ...
 
        obj.size = UInt32  ...
        obj.ctrlInterfaceType = IFrameQBufMgr.Interface  ...
        obj.name = String  ...
        obj.openFlag = Bool  ...
 
        obj.bufPtr = UInt32  ...
        obj.bufSize = UInt32  ...
        obj.startOffset = UInt32  ...
        obj.validSize = UInt32  ...
        obj.pixelFormat = UInt32  ...
        obj.height = UInt32  ...
        obj.width = UInt32  ...
        obj.stride = UInt32  ...
 
        obj.size = UInt32  ...
        obj.pixelFormat = UInt32  ...
        obj.height = UInt32  ...
        obj.width = UInt32  ...
        obj.align = UInt32  ...
 
        obj.reserved0 = UInt32  ...
        obj.reserved1 = UInt32  ...
        obj.baseHeaderSize = UInt16  ...
        obj.headerSize = UInt16  ...
        obj.frmAllocaterId = UInt32  ...
        obj.frameBufType = UInt32  ...
        obj.freeFrmQueueNo = UInt8  ...
        obj.numFrameBuffers = UInt8  ...
        obj.frameBufInfo = IFrame.FrameBufInfo[1]  ...
 
        obj.numFrms = UInt32  ...
        obj.freeFrms = UInt32  ...
        obj.numFrmHdrBufs = UInt32  ...
        obj.freeFrmHdrBufs = UInt32  ...
        obj.frmHdrBufSize = UInt32  ...
        obj.numBufsInFrame = UInt32  ...
        obj.numDynamicHdrBufs = UInt32  ...
        obj.freeDynamicHdrBufs = UInt32  ...
        obj.numDynamicFrames = UInt32  ...
        obj.freeDynamicFrames = UInt32  ...
        obj.frmStartAddrp = UInt32  ...
        obj.frmEndAddrp = UInt32  ...
        obj.hdrBufStartAddrp = UInt32  ...
        obj.hdrBufEndAddrp = UInt32  ...
        obj.frmBufsStartAddrp = UInt32  ...
        obj.frmBufsEndAddrp = UInt32  ...
        obj.frmBufSize = UInt32[IFrameQBufMgr.MAX_FRAMEBUFS]  ...
        obj.frmRefCnt = UInt32[IFrameQBufMgr.POOL_MAXFRAMES]  ...
        obj.dynFrame = UInt32[IFrameQBufMgr.POOL_DYNAMIC_MAXFRAMES]  ...
        obj.dynFrmRefCnt = UInt32[IFrameQBufMgr.POOL_DYNAMIC_MAXFRAMES]  ...
        obj.hdrBuf_refCntIndex = UInt32[IFrameQBufMgr.POOL_MAXHDRS]  ...
        obj.dynHdrBuf_refCntIndex = UInt32[IFrameQBufMgr.POOL_DYNAMIC_MAXHDRS]  ...
        obj.dynHdrBufs = UInt32[IFrameQBufMgr.POOL_DYNAMIC_MAXHDRS]  ...
        obj.hdrBufIsUsed = Bool[IFrameQBufMgr.POOL_MAXHDRS]  ...
        obj.dynHdrBufIsUsed = Bool[IFrameQBufMgr.POOL_DYNAMIC_MAXHDRS]  ...
        obj.hdrBuf_refCntIndexType = UInt8[IFrameQBufMgr.POOL_MAXHDRS]  ...
 
        obj.notifyType = SysLink.NotifyType  ...
        obj.watermark = UInt32  ...
        obj.cbFxnPtr = Void(*)(IFrameQBufMgr.Handle,Ptr,UInt16)  ...
        obj.cbContext = Ptr  ...
        obj.cbClientHandle = Ptr  ...
 
        obj.sharedAddr = Ptr  ...
        obj.sharedAddrSize = UInt32  ...
        obj.instGateMPAddr = Ptr  ...
        obj.frmBuf_regionId = UInt8  ...
        obj.hdrBuf_regionId = UInt8  ...
        obj.cliGateMPAddr = Ptr  ...
module-wide config parameters
        msg: "A_InvalidCreatorProcId: Invalid creator processor id"
    };
        msg: "A_InvalidInstNo: Invalid instance no"
    };
        msg: "A_invalidParams: Invalid parameter"
    };
        msg: "A_nullHandle: Null Handle"
    };
        msg: "A_nullPointer: Null pointer"
    };
        msg: "E_CacheAlign: BufferSize is not Cache Aligned"
    };
        msg: "E_ClientNotifyMgrCreate: ClientNotifyMgr instance Create Failed"
    };
        msg: "E_ClientNotifyMgrOpen: ClientNotifyMgrOpen instance Open Failed"
    };
        msg: "E_FrameQBufMgrCreateFail: Internal FrameQBufMgr instance create API failed"
    };
        msg: "E_FrameQBufMgrNotCreated: FrameQBufMgr instance is not created"
    };
        msg: "E_FrameQBufMgrNotFound: FrameQBufMgr instance is not found in NameServer"
    };
        msg: "E_FrameQBufMgrOpenFail: FrameQBufMgr instance open failed"
    };
        msg: "E_InstanceExists: Instance already exists"
    };
        msg: "E_InvAddr: Shared Addr provide to create call is NULL"
    };
        msg: "E_InvSize: SharedMemory provided to create call is less than the instance shared memory requirements"
    };
        msg: "E_InvalidInterfaceType: Invalid interface type"
    };
        msg: "E_InvalidParams: Invalid parameter"
    };
        msg: "E_maxInstances: max instances limit reached"
    };
 
per-instance config parameters
    var params = new FrameQBufMgr.Params// Instance config-params object;
            size: 0,
            ctrlInterfaceType: IFrameQBufMgr.INTERFACE_NONE,
            name: null,
            openFlag: false
        };
 
 
proxy FrameQBufMgr.GateProxy

IGateProvider Proxy

XDCscript usage meta-domain
FrameQBufMgr.GateProxy = IGateProvider.Module null
// some delegate module inheriting the IGateProvider interface
    FrameQBufMgr.GateProxy.delegate$ = IGateProvider.Module null
    // explicit access to the currently bound delegate module
    FrameQBufMgr.GateProxy.abstractInstances$ = false
    // use indirect runtime function calls if true
 
DETAILS
Module used to provide default critical region management when accessing the shared memory. The default is ti.sdo.ipc.gates.GatePeterson.
Requires Arm to be procId 0 or 1 and the DSP be 1 or 0.
 
const FrameQBufMgr.DYNAMIC_CREATE

Type of creation

XDCscript usage meta-domain
const FrameQBufMgr.DYNAMIC_CREATE = 0x4;
 
C SYNOPSIS
 
const FrameQBufMgr.DYNAMIC_CREATE_USEDREGION

Type of creation

XDCscript usage meta-domain
const FrameQBufMgr.DYNAMIC_CREATE_USEDREGION = 0x8;
 
C SYNOPSIS
 
const FrameQBufMgr.DYNAMIC_FRAME

Denotes Frame belongs to dynamic frame grougp that are added dynamically at runtime

XDCscript usage meta-domain
const FrameQBufMgr.DYNAMIC_FRAME = 2;
 
C SYNOPSIS
 
const FrameQBufMgr.DYNAMIC_OPEN

Type of open

XDCscript usage meta-domain
const FrameQBufMgr.DYNAMIC_OPEN = 0x20;
 
C SYNOPSIS
 
const FrameQBufMgr.FRAMEBUF_CPUACCESSFLAGS_BITOFFSET
XDCscript usage meta-domain
const FrameQBufMgr.FRAMEBUF_CPUACCESSFLAGS_BITOFFSET = 16;
 
C SYNOPSIS
 
const FrameQBufMgr.INVALID

Type of open

XDCscript usage meta-domain
const FrameQBufMgr.INVALID = 0xFF;
 
C SYNOPSIS
 
const FrameQBufMgr.MAX_FRAMEBUFS

Maximum number of frame buffers in a frame managed by in FrameQBufMgr instance

XDCscript usage meta-domain
const FrameQBufMgr.MAX_FRAMEBUFS = 8;
 
C SYNOPSIS
 
const FrameQBufMgr.MAX_POOLS

Maximum number of Free Frame pools pools managed by FrameQBufMgr instance

XDCscript usage meta-domain
const FrameQBufMgr.MAX_POOLS = 64;
 
C SYNOPSIS
 
const FrameQBufMgr.POOL_DYNAMIC_MAXFRAMES

Maximum number of dynbuffers managed by each buffer pool in FrameQBufMgr instance

XDCscript usage meta-domain
const FrameQBufMgr.POOL_DYNAMIC_MAXFRAMES = 1;
 
C SYNOPSIS
 
const FrameQBufMgr.POOL_DYNAMIC_MAXHDRS

Maximum number of additional dynamic free headers managed by FrameQBufMgr instance for each Free Frame pool

XDCscript usage meta-domain
const FrameQBufMgr.POOL_DYNAMIC_MAXHDRS = 1;
 
C SYNOPSIS
 
const FrameQBufMgr.POOL_MAXFRAMES

Maximum number of static free Frames managed by FrameQBufMgr instance for a Free Frame pool

XDCscript usage meta-domain
const FrameQBufMgr.POOL_MAXFRAMES = 32;
 
C SYNOPSIS
 
const FrameQBufMgr.POOL_MAXHDRS

Maximum number of additional static free headers managed by FrameQBufMgr instance for each Free Frame pool

XDCscript usage meta-domain
const FrameQBufMgr.POOL_MAXHDRS = 64;
 
C SYNOPSIS
 
const FrameQBufMgr.STATIC_CREATE

Type of creation

XDCscript usage meta-domain
const FrameQBufMgr.STATIC_CREATE = 0x1;
 
C SYNOPSIS
 
const FrameQBufMgr.STATIC_CREATE_USEDREGION

Type of creation

XDCscript usage meta-domain
const FrameQBufMgr.STATIC_CREATE_USEDREGION = 0x2;
 
C SYNOPSIS
 
const FrameQBufMgr.STATIC_FRAME

Denotes Frame belongs to static frames that are populated at create time of the instance

XDCscript usage meta-domain
const FrameQBufMgr.STATIC_FRAME = 1;
 
C SYNOPSIS
 
const FrameQBufMgr.STATIC_OPEN

Type of open

XDCscript usage meta-domain
const FrameQBufMgr.STATIC_OPEN = 0x10;
 
C SYNOPSIS
 
const FrameQBufMgr.VERSION
XDCscript usage meta-domain
const FrameQBufMgr.VERSION = 1;
 
C SYNOPSIS
 
enum FrameQBufMgr.AddrType

Enumerations to indicate address types used for translation

XDCscript usage meta-domain
values of type FrameQBufMgr.AddrType
    const FrameQBufMgr.AddrType_Virtual;
    const FrameQBufMgr.AddrType_Portable;
    const FrameQBufMgr.AddrType_EndValue;
 
VALUES
AddrType_Virtual — Virtual address on calling process on DSP where MMU is not configured it could be the physical address.
AddrType_Portable — This is the shared region address incase sharedmemory manager plugged in to frameQbufMgr. In case of tiler it could be the tiler specific portable address
AddrType_EndValue — End delimiter indicating start of invalid values for this enum
C SYNOPSIS
 
enum FrameQBufMgr.BufType

Enumerations to indicate address types used for translation

XDCscript usage meta-domain
values of type FrameQBufMgr.BufType
    const FrameQBufMgr.BUF_FRAMEHEADER;
    const FrameQBufMgr.BUF_FRAMEBUF;
    const FrameQBufMgr.BUF_ENDVALUE;
 
VALUES
BUF_FRAMEHEADER — Denotes buffer is of type used for frame headers.
BUF_FRAMEBUF — Denotes buffer is of type used for frame buffers
AddrType_EndValue — End delimiter indicating start of invalid values for this enum
C SYNOPSIS
 
enum FrameQBufMgr.CpuAccessFlags

Enumeration of CPU access flags for frame buffers. For frame headers CPUACCESS is assumed to be TRUE

XDCscript usage meta-domain
values of type FrameQBufMgr.CpuAccessFlags
    const FrameQBufMgr.FRAMEBUF0_CPUACCESS;
    const FrameQBufMgr.FRAMEBUF1_CPUACCESS;
    const FrameQBufMgr.FRAMEBUF2_CPUACCESS;
    const FrameQBufMgr.FRAMEBUF3_CPUACCESS;
    const FrameQBufMgr.FRAMEBUF4_CPUACCESS;
    const FrameQBufMgr.FRAMEBUF5_CPUACCESS;
    const FrameQBufMgr.FRAMEBUF6_CPUACCESS;
    const FrameQBufMgr.FRAMEBUF7_CPUACCESS;
 
VALUES
FRAMEBUF0_CPUACCESS — If specified first frame buffer is accessed through CPU(direct memory access).
FRAMEBUF1_CPUACCESS — If specified second frame buffer is accessed through CPU(direct memory access).
FRAMEBUF2_CPUACCESS — If specified third frame buffer is accessed through CPU(direct memory access).
FRAMEBUF3_CPUACCESS — If specified fourth frame buffer is accessed through CPU(direct memory access).
FRAMEBUF4_CPUACCESS — If specified fifth frame buffer is accessed through CPU(direct memory access).
FRAMEBUF5_CPUACCESS — If specified sixth frame buffer is accessed through CPU(direct memory access).
FRAMEBUF6_CPUACCESS — If specified seventh frame buffer is accessed through CPU(direct memory access).
FRAMEBUF7_CPUACCESS — If specified eigth frame buffer is accessed through CPU(direct memory access).
C SYNOPSIS
 
enum FrameQBufMgr.Interface

Enumeration of FrameQBufMgr interface types.Denotes different implementation types

XDCscript usage meta-domain
values of type FrameQBufMgr.Interface
    const FrameQBufMgr.INTERFACE_SHAREDMEM;
    const FrameQBufMgr.INTERFACE_TILERMEM;
    const FrameQBufMgr.INTERFACE_NONE;
 
VALUES
INTERFACE_SHAREDMEM — FrameQNufMgr implementation (FrameQBufMgr_ShMem Implementation) on shared memory.
C SYNOPSIS
 
struct FrameQBufMgr.Attrs

Shared control strucrue for the instance attributes

XDCscript usage meta-domain
var obj = new FrameQBufMgr.Attrs;
 
    obj.status = UInt32  ...
    obj.version = UInt32  ...
    obj.localProtect = UInt32  ...
    obj.remoteProtect = UInt32  ...
    obj.gateMPAddr = Ptr  ...
    obj.name = Char[IFrameQBufMgr.MAX_NAMELEN]  ...
    obj.sharedDataBufAddr = Ptr  ...
    obj.sharedAddrSize = UInt32  ...
    obj.numFreeFramePools = UInt32  ...
    obj.numNotifyEntries = UInt32  ...
    obj.entryId = UInt16  ...
 
FIELDS
status — Flag denoting whether instance is created or not.
version — Version of the instance.
localProtect — Local protection type.See GateMP.LocalProtect
remoteProtect — Remote protection types.See GateMP.RemoteProtect
gateMPAddr — GateMP address (shm safe)
name — Name of the instance.
sharedDataBufAddr — Holds Data buffer start address provided at instance crate time.
sharedAddrSize — The size of the data buffer.
FILED
Number of free frame pools maintained by this instance.
Unique id of the instance in the system. Combination of creator procId and instance no on that processor.
C SYNOPSIS
 
struct FrameQBufMgr.CommonOpenParams

Common paramters requiredto open a FrameQBufMgr instance of any implementation

XDCscript usage meta-domain
var obj = new FrameQBufMgr.CommonOpenParams;
 
    obj.name = String  ...
    obj.cpuAccessFlags = UInt32  ...
    obj.sharedAddr = Ptr  ...
    obj.gate = IGateProvider.Handle  ...
 
FIELDS
name — Name of the instance to open.
— (cacheFlags) Cache flags to perform cache operations .
sharedAddr — Shared addr in case open by address is required.
gate — gate for protection.
C SYNOPSIS
 
struct FrameQBufMgr.Config

mouduleconfig structure

XDCscript usage meta-domain
var obj = new FrameQBufMgr.Config;
 
    obj.eventNo = UInt32  ...
    obj.useNameServer = Bool  ...
    obj.maxInstances = Bool  ...
 
FIELDS
sharedAddr — Shared region address for module initialization.
sharedAddrSize — Size of the shared region .
— (cacheFlags) Cache flags to perform cache operations on module wide shared control structure.
eventNo — The event number used for notification.
name — Name for the module.
shCtrlOpenFlag — Boolean flag if set to FALSE, populate the shared control info required between processors for this module. If it set to TRUE, module initialize call opens the shared control info.Ideally master processor set this flag to FALSE to crate the shared control info.
C SYNOPSIS
 
struct FrameQBufMgr.ControlStruct

Shared control structure for the FrameQBufMgr instance

XDCscript usage meta-domain
var obj = new FrameQBufMgr.ControlStruct;
 
    obj.attrs = IFrameQBufMgr.Attrs  ...
    obj.freeFramePool = IFrameQBufMgr.FreeFramePoolObj[IFrameQBufMgr.MAX_POOLS]  ...
 
FIELDS
attrs — Shared control info of type Attrs.
bufPool — Array of buffer pools of type bufPoolList.
C SYNOPSIS
 
struct FrameQBufMgr.CreateParams

Structure defining common instance parameters for the FrameQ module.Should be the first element in the create params strcture of the actual implementation

XDCscript usage meta-domain
var obj = new FrameQBufMgr.CreateParams;
 
    obj.size = UInt32  ...
    obj.ctrlInterfaceType = IFrameQBufMgr.Interface  ...
    obj.name = String  ...
    obj.openFlag = Bool  ...
 
FIELDS
size — Size of the Create params structure(Should be the size of the actual implementation's Create params structure in which this FrameQ_CreateParams is the first element.
interface — type of implementation. See Interface.
name — Name of the instance.
openFlag — Denotes whether create should actually create/open instance.
C SYNOPSIS
 
struct FrameQBufMgr.FrameBufInfo

Structure of the framebuffer info in frame

XDCscript usage meta-domain
var obj = new FrameQBufMgr.FrameBufInfo;
 
    obj.bufPtr = UInt32  ...
    obj.bufSize = UInt32  ...
    obj.startOffset = UInt32  ...
    obj.validSize = UInt32  ...
    obj.pixelFormat = UInt32  ...
    obj.height = UInt32  ...
    obj.width = UInt32  ...
    obj.stride = UInt32  ...
 
FIELDS
bufPtr — Pointer to the frame buffer.
bufSize — Size of the buffer.
startOffSet — Start offset in the buffer from where valid data starts.
validSize — Valid size in the buffer from the zeroth offset in the frame buffer.
height — Pointer to the frame buffer.
width — Size of the buffer.
stride — Multiple of page size and needs to be added to Tile start address in order to get the address starting on next row in same tile.
C SYNOPSIS
 
struct FrameQBufMgr.FrameBufParams

Structure defining common frame buf params for tiled as well as non tiled buffers

XDCscript usage meta-domain
var obj = new FrameQBufMgr.FrameBufParams;
 
    obj.size = UInt32  ...
    obj.pixelFormat = UInt32  ...
    obj.height = UInt32  ...
    obj.width = UInt32  ...
    obj.align = UInt32  ...
 
FIELDS
size — size for non tiled buffer. Structure defining parameters for the Tiled data buffers
pixelFormat — pixel format for tiled buffer.
height — height .
width — width .
stride — stride of container, must be multiple of page size.
align — Alignment of the buffer .
C SYNOPSIS
 
struct FrameQBufMgr.FrameHeader

Structure of the base frame header. FrameQ maintains list of frames to be retrieved by FrameQ reader client. Application is expected to use Helper API to extract fileds and exteneded header pointer

XDCscript usage meta-domain
var obj = new FrameQBufMgr.FrameHeader;
 
    obj.reserved0 = UInt32  ...
    obj.reserved1 = UInt32  ...
    obj.baseHeaderSize = UInt16  ...
    obj.headerSize = UInt16  ...
    obj.frmAllocaterId = UInt32  ...
    obj.frameBufType = UInt32  ...
    obj.freeFrmQueueNo = UInt8  ...
    obj.numFrameBuffers = UInt8  ...
    obj.frameBufInfo = IFrame.FrameBufInfo[1]  ...
 
FIELDS
baseHeaderSize — Size of the base frame header.
headerSize — Size of the frame header(total size of base header and extended header).
frmAllocaterId — Denotes the FrameQBufMgr Id from which frame is allocated.
freeFrmQueueNo — Free quque No from which frame is allocated in FrameQBufMgr.
numFrameBuffers — Number of framebuffers in a frame.
frameBufInfo — Information of Frame buffer. FrameBufInfo
C SYNOPSIS
 
struct FrameQBufMgr.FreeFramePoolObj

Free Frame pool structure to keep track of the free frames in a frame pool

XDCscript usage meta-domain
var obj = new FrameQBufMgr.FreeFramePoolObj;
 
    obj.numFrms = UInt32  ...
    obj.freeFrms = UInt32  ...
    obj.numFrmHdrBufs = UInt32  ...
    obj.freeFrmHdrBufs = UInt32  ...
    obj.frmHdrBufSize = UInt32  ...
    obj.numBufsInFrame = UInt32  ...
    obj.numDynamicHdrBufs = UInt32  ...
    obj.freeDynamicHdrBufs = UInt32  ...
    obj.numDynamicFrames = UInt32  ...
    obj.freeDynamicFrames = UInt32  ...
    obj.frmStartAddrp = UInt32  ...
    obj.frmEndAddrp = UInt32  ...
    obj.hdrBufStartAddrp = UInt32  ...
    obj.hdrBufEndAddrp = UInt32  ...
    obj.frmBufsStartAddrp = UInt32  ...
    obj.frmBufsEndAddrp = UInt32  ...
    obj.frmBufSize = UInt32[IFrameQBufMgr.MAX_FRAMEBUFS]  ...
    obj.frmRefCnt = UInt32[IFrameQBufMgr.POOL_MAXFRAMES]  ...
    obj.dynFrame = UInt32[IFrameQBufMgr.POOL_DYNAMIC_MAXFRAMES]  ...
    obj.dynFrmRefCnt = UInt32[IFrameQBufMgr.POOL_DYNAMIC_MAXFRAMES]  ...
    obj.hdrBuf_refCntIndex = UInt32[IFrameQBufMgr.POOL_MAXHDRS]  ...
    obj.dynHdrBuf_refCntIndex = UInt32[IFrameQBufMgr.POOL_DYNAMIC_MAXHDRS]  ...
    obj.dynHdrBufs = UInt32[IFrameQBufMgr.POOL_DYNAMIC_MAXHDRS]  ...
    obj.hdrBufIsUsed = Bool[IFrameQBufMgr.POOL_MAXHDRS]  ...
    obj.dynHdrBufIsUsed = Bool[IFrameQBufMgr.POOL_DYNAMIC_MAXHDRS]  ...
    obj.hdrBuf_refCntIndexType = UInt8[IFrameQBufMgr.POOL_MAXHDRS]  ...
    obj.dynHdrBuf_refCntIndexType = UInt8[IFrameQBufMgr.POOL_DYNAMIC_MAXHDRS]  ...
 
C SYNOPSIS
 
struct FrameQBufMgr.NotifyParams

Structure defining notification parameter structure

XDCscript usage meta-domain
var obj = new FrameQBufMgr.NotifyParams;
 
    obj.notifyType = SysLink.NotifyType  ...
    obj.watermark = UInt32  ...
    obj.cbFxnPtr = Void(*)(IFrameQBufMgr.Handle,Ptr,UInt16)  ...
    obj.cbContext = Ptr  ...
    obj.cbClientHandle = Ptr  ...
 
FIELDS
notifyType — notification type.See SysLink.NotifyType.
watermark — Minumum number of free frames required to generate notification Same water mark for all the individual freeFramePools in the set.
cbFxnPtr — Cacll back function.
cbContext — Context pointer that needs to be passed to call back function.
cbClientHandle — Handle that needs to be passed as first arg to call back.Ideally this should be callers client handle.
C SYNOPSIS
 
struct FrameQBufMgr.ShMem_InstNameServerEntryParams

Structure defining Additional specific parameters that name server maintains alonh with the interface type

XDCscript usage meta-domain
var obj = new FrameQBufMgr.ShMem_InstNameServerEntryParams;
 
    obj.sharedAddr = Ptr  ...
    obj.sharedAddrSize = UInt32  ...
    obj.instGateMPAddr = Ptr  ...
    obj.frmBuf_regionId = UInt8  ...
    obj.hdrBuf_regionId = UInt8  ...
    obj.cliGateMPAddr = Ptr  ...
 
FIELDS
sharedAddr — Virtual shared Region Address for control structure.
sharedAddrSize — Size of the shared memory for control structure.
instGateMPAddr — Instance gateMP shared address in SharedRegion_SRPtr format.Valid only if it is created internally.
memMgrType_HdrBufs — MemMgr type configured for Header buffers.
memMgrType_FrmBufs — MemMgr type configured for Frame buffers.
allocaterName_HdrBufs — Name of the HeapMemMp instance to be used Header buffer allocation. TODO: need to check if it is valid for Tiler
allocaterName_FrmBufs — Name of the HeapMemMp instance to be used frame buffer allocation. TODO: need to check if it is valid for Tiler
C SYNOPSIS
 
config FrameQBufMgr.A_InvalidCreatorProcId  // module-wide

Assert raised when creator processor id of the instance is not valid

XDCscript usage meta-domain
FrameQBufMgr.A_InvalidCreatorProcId = Assert.Desc {
    msg: "A_InvalidCreatorProcId: Invalid creator processor id"
};
 
C SYNOPSIS
 
config FrameQBufMgr.A_InvalidInstNo  // module-wide

Assert raised when Inst No of the instance is not valid

XDCscript usage meta-domain
FrameQBufMgr.A_InvalidInstNo = Assert.Desc {
    msg: "A_InvalidInstNo: Invalid instance no"
};
 
C SYNOPSIS
 
config FrameQBufMgr.A_invalidParams  // module-wide

Assert raised when an invalid parameter(s) is passed into a function

XDCscript usage meta-domain
FrameQBufMgr.A_invalidParams = Assert.Desc {
    msg: "A_invalidParams: Invalid parameter"
};
 
C SYNOPSIS
 
config FrameQBufMgr.A_nullHandle  // module-wide

Assert raised when null handle is returned from modules

XDCscript usage meta-domain
FrameQBufMgr.A_nullHandle = Assert.Desc {
    msg: "A_nullHandle: Null Handle"
};
 
C SYNOPSIS
 
config FrameQBufMgr.A_nullPointer  // module-wide

Assert raised when a null pointer needs to be dereferenced

XDCscript usage meta-domain
FrameQBufMgr.A_nullPointer = Assert.Desc {
    msg: "A_nullPointer: Null pointer"
};
 
C SYNOPSIS
 
config FrameQBufMgr.Attrs_STRUCT_PADDING  // module-wide

Padding required for the Attrs structure

XDCscript usage meta-domain
FrameQBufMgr.Attrs_STRUCT_PADDING = UInt32 ((IFrameQBufMgr.CACHE_LINESIZE - ((4 * 8) + (IFrameQBufMgr.MAX_NAMELEN) + 2)) / 2);
 
C SYNOPSIS
 
config FrameQBufMgr.CACHE_LINESIZE  // module-wide

Cache line size

XDCscript usage meta-domain
FrameQBufMgr.CACHE_LINESIZE = UInt32 128;
 
C SYNOPSIS
 
config FrameQBufMgr.E_CacheAlign  // module-wide

Error raised when buffersize is not aligned to Cache line size

XDCscript usage meta-domain
FrameQBufMgr.E_CacheAlign = Error.Desc {
    msg: "E_CacheAlign: BufferSize is not Cache Aligned"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_ClientNotifyMgrCreate  // module-wide

Error raised when ClientNotifyMgr Create failed

XDCscript usage meta-domain
FrameQBufMgr.E_ClientNotifyMgrCreate = Error.Desc {
    msg: "E_ClientNotifyMgrCreate: ClientNotifyMgr instance Create Failed"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_ClientNotifyMgrOpen  // module-wide

Error raised when ClientNotifyMgrOpen failed

XDCscript usage meta-domain
FrameQBufMgr.E_ClientNotifyMgrOpen = Error.Desc {
    msg: "E_ClientNotifyMgrOpen: ClientNotifyMgrOpen instance Open Failed"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_FrameQBufMgrCreateFail  // module-wide

Error raised when internal FrameQBufMgr create failed

XDCscript usage meta-domain
FrameQBufMgr.E_FrameQBufMgrCreateFail = Error.Desc {
    msg: "E_FrameQBufMgrCreateFail: Internal FrameQBufMgr instance create API failed"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_FrameQBufMgrNotCreated  // module-wide

Error raised when FrameQBufMgr is not created

XDCscript usage meta-domain
FrameQBufMgr.E_FrameQBufMgrNotCreated = Error.Desc {
    msg: "E_FrameQBufMgrNotCreated: FrameQBufMgr instance is not created"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_FrameQBufMgrNotFound  // module-wide

Error raised when FrameQBufMgr is not Found in NameServer

XDCscript usage meta-domain
FrameQBufMgr.E_FrameQBufMgrNotFound = Error.Desc {
    msg: "E_FrameQBufMgrNotFound: FrameQBufMgr instance is not found in NameServer"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_FrameQBufMgrOpenFail  // module-wide

Error raised when FrameQBufMgr open failed

XDCscript usage meta-domain
FrameQBufMgr.E_FrameQBufMgrOpenFail = Error.Desc {
    msg: "E_FrameQBufMgrOpenFail: FrameQBufMgr instance open failed"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_InstanceExists  // module-wide

Error raised when an instance already exists

XDCscript usage meta-domain
FrameQBufMgr.E_InstanceExists = Error.Desc {
    msg: "E_InstanceExists: Instance already exists"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_InvAddr  // module-wide

Error raised when Insufficient shared addrprovided to create call

XDCscript usage meta-domain
FrameQBufMgr.E_InvAddr = Error.Desc {
    msg: "E_InvAddr: Shared Addr provide to create call is NULL"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_InvSize  // module-wide

Error raised when Insufficient shared memory provided to create call

XDCscript usage meta-domain
FrameQBufMgr.E_InvSize = Error.Desc {
    msg: "E_InvSize: SharedMemory provided to create call is less than the instance shared memory requirements"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_InvalidInterfaceType  // module-wide

Error raised when an invalid interface type mentioned in params

XDCscript usage meta-domain
FrameQBufMgr.E_InvalidInterfaceType = Error.Desc {
    msg: "E_InvalidInterfaceType: Invalid interface type"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_InvalidParams  // module-wide

Error raised when an invalid parameter(s) is passed into a function

XDCscript usage meta-domain
FrameQBufMgr.E_InvalidParams = Error.Desc {
    msg: "E_InvalidParams: Invalid parameter"
};
 
C SYNOPSIS
 
config FrameQBufMgr.E_maxInstances  // module-wide

Error raised when max instances limit is reached

XDCscript usage meta-domain
FrameQBufMgr.E_maxInstances = Error.Desc {
    msg: "E_maxInstances: max instances limit reached"
};
 
C SYNOPSIS
 
config FrameQBufMgr.MAXINSTANCES  // module-wide

Maximum number of instances that can be created for this module

XDCscript usage meta-domain
FrameQBufMgr.MAXINSTANCES = UInt32 64;
 
C SYNOPSIS
 
config FrameQBufMgr.MAX_NAMELEN  // module-wide

Maximum length of the name strings

XDCscript usage meta-domain
FrameQBufMgr.MAX_NAMELEN = UInt32 32;
 
C SYNOPSIS
 
config FrameQBufMgr.NOTIFY_RESERVED_EVENTNO  // module-wide

Event Number to be used by FrameQBufMgr module

XDCscript usage meta-domain
FrameQBufMgr.NOTIFY_RESERVED_EVENTNO = UInt32 3;
 
C SYNOPSIS
 
config FrameQBufMgr.nameServer  // module-wide

Handle to the name server

XDCscript usage meta-domain
FrameQBufMgr.nameServer = NameServer.Handle null;
 
C SYNOPSIS
 
config FrameQBufMgr.usedefaultgate  // module-wide

If set to true FrameQBufMgr instances will use dafault gate set in FrameQBufMgr. If default gate is not set in FrameQBufMgr, it uses GateMP's default gate. Set it to zero if FrameQBufMgr needs to create gate for a instance (remoteProtect and localProtect flags should be valid in params in this case)

XDCscript usage meta-domain
FrameQBufMgr.usedefaultgate = Bool false;
 
C SYNOPSIS
 
metaonly config FrameQBufMgr.common$  // module-wide

Common module configuration parameters

XDCscript usage meta-domain
FrameQBufMgr.common$ = Types.Common$ undefined;
 
DETAILS
All modules have this configuration parameter. Its name contains the '$' character to ensure it does not conflict with configuration parameters declared by the module. This allows new configuration parameters to be added in the future without any chance of breaking existing modules.
 
metaonly config FrameQBufMgr.maxRuntimeEntries  // module-wide

Maximum number of FrameQBUfMgr's that can be dynamically created and added to the NameServer

XDCscript usage meta-domain
FrameQBufMgr.maxRuntimeEntries = UInt NameServer.ALLOWGROWTH;
 
 
metaonly config FrameQBufMgr.nameSrvPrms  // module-wide

This Params object is used for temporary storage of the module wide parameters that are for setting the NameServer instance

XDCscript usage meta-domain
FrameQBufMgr.nameSrvPrms = NameServer.Params undefined;
 
 
metaonly config FrameQBufMgr.tableSection  // module-wide

Section name is used to place the names table

XDCscript usage meta-domain
FrameQBufMgr.tableSection = String null;
 
 
metaonly config FrameQBufMgr.useNameServer  // module-wide

Whether to have this module use the NameServer or not

XDCscript usage meta-domain
FrameQBufMgr.useNameServer = Bool true;
 
DETAILS
Currently defaulted to false because static creation of NameServer instances is not supported.
Instance Config Parameters

XDCscript usage meta-domain
var params = new FrameQBufMgr.Params;
// Instance config-params object
    params.commonCreateParams = FrameQBufMgr.CreateParams {
    // 
        size: 0,
        ctrlInterfaceType: IFrameQBufMgr.INTERFACE_NONE,
        name: null,
        openFlag: false
    };
    params.impParams = Ptr null;
    // Pointer to implementation specific parameters
    params.impParamsSize = UInt32 0;
    // Pointer to implementation specific parameters
 
config FrameQBufMgr.commonCreateParams  // instance
XDCscript usage meta-domain
var params = new FrameQBufMgr.Params;
  ...
params.commonCreateParams = FrameQBufMgr.CreateParams {
    size: 0,
    ctrlInterfaceType: IFrameQBufMgr.INTERFACE_NONE,
    name: null,
    openFlag: false
};
 
C SYNOPSIS
 
config FrameQBufMgr.impParams  // instance

Pointer to implementation specific parameters

XDCscript usage meta-domain
var params = new FrameQBufMgr.Params;
  ...
params.impParams = Ptr null;
 
C SYNOPSIS
 
config FrameQBufMgr.impParamsSize  // instance

Pointer to implementation specific parameters

XDCscript usage meta-domain
var params = new FrameQBufMgr.Params;
  ...
params.impParamsSize = UInt32 0;
 
C SYNOPSIS
generated on Thu, 27 Oct 2011 17:13:50 GMT