DSMCC  15.3.1
source/dscore/src/loadMgr.c File Reference

Functions for managing load requests and loading of object carousels, data carousels, modules and objects. More...

#include <string.h>
#include "clDsmSystem.h"
#include "loadMgr.h"
#include "sectionFilter.h"
#include "cacheMgr.h"
#include "module.h"
#include "moduleData.h"
#include "moduleDecompress.h"
#include "object.h"
#include "dataCarousel.h"
#include "dsmObject.h"
#include "clDsmUtils.h"
#include "cldsmcc.h"
#include "defMemUtilsMgd.h"
#include "sectionTimer.h"

Data Structures

struct  LiteOptionObject_tag

Defines

#define loadRequestInit(pLoadRequest, eTargetType, bClntRqst, vhOC, uTimeOut, fFnlFunc, sCaching)

Typedefs

typedef struct LiteOptionObject_tag LiteOptionObject_t
typedef struct
LiteOptionObject_tag
pLiteOptionObject_t

Functions

clDsmErr_t lmCarouselLoadCreate (pclDsmInstData_t idp, pObjectCarousel_t pOC, U32BIT timeout, MemHandle *phLoadRequest)
clDsmErr_t lmUpdateCarouselBoot (pclDsmInstData_t idp, pObjectCarousel_t pOC, clDsmCarouselInfo_t *pCarouselInfo)
clDsmErr_t lmRequestObjectLoad (pclDsmInstData_t idp, pObjectCarousel_t pOC, U8BIT *path, U32BIT timeout, H_ObjUserData pUserData, U32BIT sizeOfUserData, pDsmObject_t pDsmObject, MemHandle *phLoadRequest)
clDsmErr_t lmPrefetchObjectLoad (pclDsmInstData_t idp, pObjectCarousel_t pOC, U8BIT *path, U32BIT timeout, MemHandle *phLoadRequest)
void lmLoadDestroy (pclDsmInstData_t idp, MemHandle *phLoadRequest)
clDsmErr_t lmGetObjectLoadState (pclDsmInstData_t idp, pObjectCarousel_t pOC, U8BIT *path, BOOLEAN *pLoaded, MemHandle *phModule)
clDsmErr_t lmUpdateCarouselSRGInfo (pclDsmInstData_t idp, pObjectCarousel_t pOC, pDeliveryParaTap_t pSrgTap, pObjectLocation_t pSrgLocn)
clDsmErr_t lmUpdateModule (pclDsmInstData_t idp, pObjectCarousel_t pOC, MemHandle *phModule)
clDsmErr_t lmUpdateDataCarousel (pclDsmInstData_t idp, pObjectCarousel_t pOC, MemHandle *phDC, U32BIT transactionId, U8BIT *pDiiMsg, U16BIT diiMsgDataLen)
void lmUnloadModule (pclDsmInstData_t idp, MemHandle *phModule)
void lmUnloadDataCarousel (pclDsmInstData_t idp, MemHandle *phDC)
void lmUnloadCarousel (pclDsmInstData_t idp, pObjectCarousel_t *ppOC)
void lmStopModuleLoadRequest (pclDsmInstData_t idp, MemHandle *phLoadRequest)
void lmSetObjectModuleLoaded (pclDsmInstData_t idp, MemHandle hModule)
void lmSetObjectModuleUnloaded (pclDsmInstData_t idp, MemHandle *phModule)
void lmAbortCarouselLoadRequest (pclDsmInstData_t idp, pObjectCarousel_t pOC)
void lmAbortLoadRequestsOnModuleTimeout (pclDsmInstData_t idp, MemHandle *phModule)
clDsmErr_t lmLiteOptionsObjectHandle (pclDsmInstData_t idp, U8BIT *name, pLoadRequest_t pLoadRequest)
clDsmErr_t lmLiteOptionsObjectOnModuleUpdate (pclDsmInstData_t idp, U8BIT *name, pObjectCarousel_t pCurrOC, MemHandle hLoadedModule, pLoadRequest_t pLoadRequest)

Detailed Description

Functions for managing load requests and loading of object carousels, data carousels, modules and objects.

Date:
28/9/2001
Author:
R Taylor

Define Documentation

#define loadRequestInit (   pLoadRequest,
  eTargetType,
  bClntRqst,
  vhOC,
  uTimeOut,
  fFnlFunc,
  sCaching 
)
Value:
dsmAssert(( pLoadRequest != NULL ));                        \
      llLinkInit( pLoadRequest->llData, NUM_LISTS_LOAD_REQUEST ); \
      pLoadRequest->magic             = LOAD_REQUEST_MAGIC;        \
      pLoadRequest->status            = LRS_INITIAL;              \
      pLoadRequest->targetKind        = eTargetType;              \
      pLoadRequest->clientRequest     = bClntRqst;                \
      pLoadRequest->targetRef.pDsmObject = NULL;                  \
      pLoadRequest->loadFinaliseFunc  = fFnlFunc;                 \
      pLoadRequest->userTimeout       = uTimeOut;                 \
      pLoadRequest->pObjCarousel      = vhOC;                     \
      pLoadRequest->hDataCarousel     = NULL;                     \
      pLoadRequest->hModule           = NULL;                     \
      pLoadRequest->tap.associationTag    = 0;                    \
      pLoadRequest->tap.id                = 0;                    \
      pLoadRequest->tap.timeout           = 0;                    \
      pLoadRequest->tap.transactionId     = 0;                    \
      pLoadRequest->objectLocation.carouselId = 0;                \
      pLoadRequest->objectLocation.moduleId   = 0;                \
      pLoadRequest->objectLocation.objectKey.length = 0;          \
      pLoadRequest->targetObjectOffset = 0;                       \
      pLoadRequest->targetObjectInfo.objectKind        = 0;       \
      pLoadRequest->targetObjectInfo.messageBodyOffset = 0;       \
      pLoadRequest->targetObjectInfo.messageBodyLength = 0;       \
      pLoadRequest->cachingRules = sCaching;                      \
      pLoadRequest->hRemainingPath = NULL;                        \
      pLoadRequest->temporary = FALSE;
 All Data Structures Files Functions Typedefs