module ti.sdo.ipc.Notify

Notification manager

This module has a common header that can be found in the ti.ipc package. Application code should include the common header file (not the RTSC-generated one): [ more ... ]
XDCspec summary sourced in ti/sdo/ipc/Notify.xdc
@Gated @ModuleStartup
module Notify {  ...
// inherits xdc.runtime.IModule
instance:  ...
C synopsis target-domain
#include <ti/sdo/ipc/Notify.h>
module-wide constants & types
module-wide config parameters
module-wide built-ins
per-instance object types
 
per-instance config parameters
        IInstance_Params *instance;
    } Notify_Params;
 
per-instance built-ins
 
XDCscript usage meta-domain
var Notify = xdc.useModule('ti.sdo.ipc.Notify');
local proxy modules
        Notify.SetupProxy.delegate$ = INotifySetup.Module null
module-wide constants & types
module-wide config parameters
        msg: "A_alreadyRegistered: Notify instance for the processor/line already registered"
    };
        msg: "A_notRegistered: Notify instance not yet registered for the processor/line"
    };
        msg: "A_outOfOrderNesting: Out of order nesting"
    };
        msg: "A_reservedEvent: Improper use of a reserved event"
    };
 
per-instance config parameters
    var params = new Notify.Params// Instance config-params object;
 
XDCspec declarations sourced in ti/sdo/ipc/Notify.xdc
package ti.sdo.ipc;
 
@Gated @ModuleStartup
module Notify {
local proxy modules
    proxy SetupProxy inherits INotifySetup;
module-wide constants & types
module-wide config parameters
        msg: "A_alreadyRegistered: Notify instance for the processor/line already registered"
    };
        msg: "A_notRegistered: Notify instance not yet registered for the processor/line"
    };
        msg: "A_outOfOrderNesting: Out of order nesting"
    };
        msg: "A_reservedEvent: Improper use of a reserved event"
    };
 
    metaonly config ViewInfo.Instance rovViewInfo//  = ViewInfo.create;
 
 
instance:
}
DETAILS
This module has a common header that can be found in the ti.ipc package. Application code should include the common header file (not the RTSC-generated one):
<PRE>#include &lt;ti/ipc/Notify.h&gt;</PRE>
The RTSC module must be used in the application's RTSC configuration file (.cfg) if runtime APIs will be used in the application:
<PRE>Notify = xdc.useModule('ti.sdo.ipc.Notify');</PRE>
Documentation for all runtime APIs, instance configuration parameters, error codes macros and type definitions available to the application integrator can be found in the <A HREF="../../../../doxygen/html/files.html">Doxygen documenation</A> for the IPC product. However, the documentation presented on this page should be referred to for information specific to the RTSC module, such as module configuration, Errors, and Asserts.
The Notify module typically doesn't require much (if any) configuration at static time. However, it is possible to reduce the amount of shared memory used by the Notify subsystem by reducing the value of numEvents.
 
proxy Notify.SetupProxy

Device-specific Notify setup proxy

XDCscript usage meta-domain
Notify.SetupProxy = INotifySetup.Module null
// some delegate module inheriting the INotifySetup interface
    Notify.SetupProxy.delegate$ = INotifySetup.Module null
    // explicit access to the currently bound delegate module
 
 
const Notify.MAXEVENTS

Maximum number of events supported by the Notify module

XDCscript usage meta-domain
const Notify.MAXEVENTS = 32;
C synopsis target-domain
#define Notify_MAXEVENTS (UInt)32
 
 
config Notify.A_alreadyRegistered  // module-wide

Assert raised when trying to re-register for given line and processor

XDCscript usage meta-domain
Notify.A_alreadyRegistered = Assert.Desc {
    msg: "A_alreadyRegistered: Notify instance for the processor/line already registered"
};
C synopsis target-domain
extern const Assert_Id Notify_A_alreadyRegistered;
 
 
config Notify.A_notRegistered  // module-wide

Assert raised when trying to use an unregistered Notify instance

XDCscript usage meta-domain
Notify.A_notRegistered = Assert.Desc {
    msg: "A_notRegistered: Notify instance not yet registered for the processor/line"
};
C synopsis target-domain
extern const Assert_Id Notify_A_notRegistered;
 
 
config Notify.A_outOfOrderNesting  // module-wide

Assert raised when restore called with improper key

XDCscript usage meta-domain
Notify.A_outOfOrderNesting = Assert.Desc {
    msg: "A_outOfOrderNesting: Out of order nesting"
};
C synopsis target-domain
extern const Assert_Id Notify_A_outOfOrderNesting;
 
 
config Notify.A_reservedEvent  // module-wide

Assert raised when trying to improperly use a reserved event

XDCscript usage meta-domain
Notify.A_reservedEvent = Assert.Desc {
    msg: "A_reservedEvent: Improper use of a reserved event"
};
C synopsis target-domain
extern const Assert_Id Notify_A_reservedEvent;
 
 
config Notify.numEvents  // module-wide

Number of events supported by Notify

XDCscript usage meta-domain
Notify.numEvents = UInt 32;
C synopsis target-domain
extern const UInt Notify_numEvents;
 
DETAILS
Lowering this value offers the benefit of lower footprint especially in shared memory.
 
config Notify.reservedEvents  // module-wide

Number of reserved event numbers

XDCscript usage meta-domain
Notify.reservedEvents = UInt16 3;
C synopsis target-domain
extern const UInt16 Notify_reservedEvents;
 
DETAILS
The first reservedEvents event numbers are reserved for middleware modules. Attempts to use these reserved events will result in a A_reservedEvent assert.
To use the reserved events, the top 16-bits of the eventId must have the SYSTEMKEY OR'd in.
 
config Notify.sendEventPollCount  // module-wide

Poll for specified amount before sendEvent times out

XDCscript usage meta-domain
Notify.sendEventPollCount = UInt32 -1;
C synopsis target-domain
extern const UInt32 Notify_sendEventPollCount;
 
DETAILS
Setting a finite value for sendEventPollCount will cause Notify_sendEvent to poll for an amount of time proportional to this value.
 
metaonly config Notify.common$  // module-wide

Common module configuration parameters

XDCscript usage meta-domain
Notify.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 Notify.rovViewInfo  // module-wide
XDCscript usage meta-domain
Notify.rovViewInfo = ViewInfo.Instance ViewInfo.create;
 
 
module-wide built-ins

C synopsis target-domain
Types_ModuleId Notify_Module_id( );
// Get this module's unique id
 
Bool Notify_Module_startupDone( );
// Test if this module has completed startup
 
IHeap_Handle Notify_Module_heap( );
// The heap from which this module allocates memory
 
Bool Notify_Module_hasMask( );
// Test whether this module has a diagnostics mask
 
Bits16 Notify_Module_getMask( );
// Returns the diagnostics mask for this module
 
Void Notify_Module_setMask( Bits16 mask );
// Set the diagnostics mask for this module
 
per-instance object types

C synopsis target-domain
typedef struct Notify_Object Notify_Object;
// Opaque internal representation of an instance object
 
typedef Notify_Object *Notify_Handle;
// Client reference to an instance object
 
typedef struct Notify_Struct Notify_Struct;
// Opaque client structure large enough to hold an instance object
 
Notify_Handle Notify_handle( Notify_Struct *structP );
// Convert this instance structure pointer into an instance handle
 
Notify_Struct *Notify_struct( Notify_Handle handle );
// Convert this instance handle into an instance structure pointer
 
per-instance config parameters

XDCscript usage meta-domain
var params = new Notify.Params;
// Instance config-params object
C synopsis target-domain
typedef struct Notify_Params {
// Instance config-params structure
    IInstance_Params *instance;
    // Common per-instance configs
} Notify_Params;
 
Void Notify_Params_init( Notify_Params *params );
// Initialize this config-params structure with supplier-specified defaults before instance creation
 
per-instance built-ins

C synopsis target-domain
Int Notify_Object_count( );
// The number of statically-created instance objects
 
Notify_Handle Notify_Object_get( Notify_Object *array, Int i );
// The handle of the i-th statically-created instance object (array == NULL)
 
Notify_Handle Notify_Object_first( );
// The handle of the first dynamically-created instance object, or NULL
 
Notify_Handle Notify_Object_next( Notify_Handle handle );
// The handle of the next dynamically-created instance object, or NULL
 
IHeap_Handle Notify_Object_heap( );
// The heap used to allocate dynamically-created instance objects
 
Types_Label *Notify_Handle_label( Notify_Handle handle, Types_Label *buf );
// The label associated with this instance object
 
String Notify_Handle_name( Notify_Handle handle );
// The name of this instance object
generated on Fri, 09 Apr 2010 01:41:05 GMT