mswMOD_RECORD

Section: Devices and Network Interfaces (4)
Updated: 2012-04-23 10:09
Index Return to man pages list
 

NAME

mswMOD_RECORD, mswMOD_DB_RECORD, mswMOD_RECORD_ARRAY - Access classes to mode switching list records

 

SYNOPSIS


 typedef struct
     {
     vltBYTES32  modName;           // identifier for module
     vltBYTES32  modId;             // destination process
     vltBYTES256 modSymbAddr;       // state attribute in database
     vltINT8     startPhase;        // module's start phase
     vltINT8     stopPhase;         // module's stop phase
     vltINT8     tracking;          // true if module received tracking commands
     vltINT8     focus;             // module used for focus x
     vltLOGICAL  required;          // module currently required in operation
     vltLOGICAL  ignore;            // ignore this module (maintenance operation)
     vltBYTES256 userField;         // free field to be used for private filtering
     } mswMOD_DB_RECORD;

 class  mswMOD_RECORD: public fndOBJECT, public mswMOD_DB_RECORD
 {
   public:
     mswMOD_RECORD();
     mswMOD_RECORD( const mswMOD_DB_RECORD& );
     mswMOD_RECORD& operator           =( const mswMOD_DB_RECORD& );

     vltLOGICAL   IsMod(const vltBYTES32  modName) const;

     const char  *ModName()     const;
     const char  *ModId()       const;
     const char  *ModSymbAddr() const;
     const char  *ModBaseAddr() const;
     vltINT8      StartPhase()  const;
     vltINT8      StopPhase()   const;
     vltINT8      Tracking()    const;
     vltINT8      Focus()       const;
     const char  *FocusName()   const;
     vltLOGICAL   Required()    const;
     vltLOGICAL   Ignore()      const;
     const char  *UserField()   const;

   private:
     vltBYTES256 modBaseAddr;       // Base root point for the unit
                                    // assumed to be the parent point for the
                                    // state attribute
 };

 class  mswMOD_RECORD_ARRAY:  public fndARRAY
 {
   public:
     mswMOD_RECORD_ARRAY();
     mswMOD_RECORD& operator []( int atIndex ) const;

 };

 

PARENT CLASS


 class mswMOD_RECORD:         public fndOBJECT, public mswMOD_DB_RECORD
 class mswMOD_RECORD_ARRAY:   public fndARRAY

 

DESCRIPTION


    These classes are part of the TCS-public msw library and provide
    TCS-public access to the mode switching list table.

    mswMOD_DB_RECORD is a data structure mapping the actual database table
    into a C structure, so that binary read/write operation from memory and
    the database can be performed. A part from this purpose (handled internally
    by the mswMOD_LIST(4) class, it should not be used directly.
    mswMOD_RECORD should always be used.

    mswMOD_RECORD represents a single record in the table and provides
    access methods to the data members. The data members, inherited
    publicly from the base class mswMOD_DB_RECORD, have public scope
    for compatibility reasons with previous versions, but should never
    be accessed directly. In a future version they could become private or
    protected.

    mswMOD_RECORD_ARRAY represents the whole table, in the form of an array
    containing as many elements as the table rows.


 

PUBLIC METHODS


  mswMOD_RECORD:
    mswMOD_RECORD();
    mswMOD_RECORD( const mswMOD_DB_RECORD& );
              Constructor and copy constructor

    mswMOD_RECORD& operator           =( const mswMOD_DB_RECORD& );
              Assignement operator

    vltLOGICAL   IsMod(const vltBYTES32  modName) const;
              Returns true if this record refers to the
              given module name.

    const char  *ModName()     const;  // Returns the module name
    const char  *ModId()       const;  // Returns the module ID, i.e. the
                                       // name of the RTAP process that
                                       // receive commands
    const char  *ModSymbAddr() const;  // Returns the module symbolic address,
                                       // i.e the address of the attribute in the
                                       // module called .state and containing its state
    const char  *ModBaseAddr() const;  // Returns the module base address, i.e.
                                       // the symbolic address of the base point for the
                                       // module, obtained removing .state from the
                                       // ModSymbAddr.
    vltINT8      StartPhase()  const;  // Returns the start phase for the module
    vltINT8      StopPhase()   const;  // Returns the stop phase for the module
    vltINT8      Tracking()    const;  // Tells if this is a tracking module
    vltINT8      Focus()       const;  // Returns the id of the focus for the module
    const char  *FocusName()   const;  // Returns the name of the focus for the module
    vltLOGICAL   Required()    const;  // Returns TRUE if the module is currently required
    vltLOGICAL   Ignore()      const;  // Returns TRUE if the module is currently ignored
    const char  *UserField()   const;  // Returns the user field

  mswMOD_RECORD_ARRAY:
    mswMOD_RECORD_ARRAY();
      Constructor

    mswMOD_RECORD& operator []( int atIndex ) const;
    mswMOD_RECORD& operator []( const vltBYTES32 modName) const;
      Array access operators.
      The first one returns the record at the given index position in the array
      or NOOBJECT.
      The second one returns the record with the given module name, if present
      in the array, or NOOBJECT.

 

PUBLIC DATA MEMBERS


  mswMOD_DB_RECORD:
    vltBYTES32  modName;           // identifier for module
    vltBYTES32  modId;             // destination process
    vltBYTES256 modSymbAddr;       // state attribute in database
    vltINT8     startPhase;        // start phase for the module, 0..n
    vltINT8     stopPhase;         // stop phase for the module, 0..n
    vltINT8     tracking;          // true if module has to receive tracking commands
    vltINT8     focus;             // module used for focus x
    vltLOGICAL  required;          // module currently required in operation
    vltLOGICAL  ignore;            // ignore this module (maintenance operation)
    vltBYTES256 userField;         // free field to be used for private filtering

 

PRIVATE DATA MEMBERS


  mswMOD_RECORD:
    vltBYTES256 modBaseAddr;       // Base root point for the unit
                                   // assumed to be the parent point for the
                                   // state attribute. Used only internally.

 

ON LINE DATABASE


  The classes will tipically be used to access records in
  an instance of the mswMOD_LIST_MANAGER database class,

     ATTRIBUTE Table  modules(mswNO_OF_MODULES,
                              BYTES32  modName,
                              BYTES32  modId,
                              BYTES256 modSymbAddr,
                              INT8     startPhase,
                              INT8     stopPhase,
                              INT8     tracking,
                              INT8     focus,
                              BOOLEAN  required,
                              BOOLEAN  ignore,
                              BYTES256 userField)
 

ENVIRONMENT


   TCS_DBPOINT  is used to provide the default database address
                if not explicitly given. See tcsDbRoot(5)


 

Index

NAME
SYNOPSIS
PARENT CLASS
DESCRIPTION
PUBLIC METHODS
PUBLIC DATA MEMBERS
PRIVATE DATA MEMBERS
ON LINE DATABASE
ENVIRONMENT

This document was created by man2html, using the manual pages.
Time: 10:09:27 GMT, April 23, 2012