mswINS_DATA_RECORD

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

NAME

mswINS_DATA_RECORD - Instrument configuration record access class.

 

SYNOPSIS


#include "mswINS_DATA_RECORD.h"

class  mswINS_DATA_RECORD: public eccsDB_TABLE_RECORD, public eccsERROR_CLASS
{
  public:
    mswINS_DATA_RECORD();
    mswINS_DATA_RECORD( const mswINS_DATA_RECORD& );
    mswINS_DATA_RECORD& operator           =( const mswINS_DATA_RECORD& );

    virtual ccsCOMPL_STAT Pack( void *buffer );
    virtual ccsCOMPL_STAT Unpack( void *buffer );

    virtual const char   *Data();
    virtual ccsCOMPL_STAT Data(const char *msgBuffer);

    virtual ccsCOMPL_STAT CleanUp();

    const vltLOGICAL IsInsId(const mswINSID &insId) const;

    const mswINSID   &InsId() const;
    const mswINSMODE &InsMode() const;
    const vltINT32    FocusStation() const;
    const char       *FocusStationName() const;
    const vltDOUBLE   RotOffset() const;
    const vltDOUBLE   FocusOffset() const;

    const vltDOUBLE   PixelSizeX() const;
    const vltDOUBLE   PixelSizeY() const;

    const vltDOUBLE   VigAreaSizeX() const;
    const vltDOUBLE   VigAreaSizeY() const;
    const vltDOUBLE   VigAreaCntX() const;
    const vltDOUBLE   VigAreaCntY() const;

    const vltDOUBLE   PointAxisOffX() const;
    const vltDOUBLE   PointAxisOffY() const;

    const char       *DetectorLCU() const;

  private:
    mswINSID    insId;           // identifier for a pair (ins,detector)
    mswINSID    insMode;         // identifier for instrument mode
    vltINT32    focusStation;    // instrument focus station (defines in mswDefines.h)

    vltDOUBLE   rotOffset;       // rotator offset (deg)
    vltDOUBLE   focusOffset;     // optimal focus offset (mm)

    vltDOUBLE   pixelSizeX;      // detector pixel size in X (arcsec/pixel)
    vltDOUBLE   pixelSizeY;      // detector pixel size in Y (arcsec/pixel)

    vltDOUBLE   vigAreaSizeX;    // vignetting area: X size (arcsec)
    vltDOUBLE   vigAreaSizeY;    // vignetting area: Y size (arcsec)
    vltDOUBLE   vigAreaCntX;     // vignetting area: X offset of center
                                 // with respect to center (arcsec)
    vltDOUBLE   vigAreaCntY;     // vignetting area: Y offset of center
                                 // with respect to center (arcsec)

    vltDOUBLE   pointAxisOffX;   // X pointing axis offset (arcsec)
    vltDOUBLE   pointAxisOffY;   // Y pointing axis offset (arcsec)

    vltBYTES256 detectorLCU;     // environment and process name

    fndSTRING cmdString;
};

 

PARENT CLASS


public eccsDB_TABLE_RECORD
public eccsERROR_CLASS

 

DESCRIPTION


This class provide access to records in the database table
keeping instrument configuration data for TCS.

The class is part of the TCS-public msw library and provide TCS-public
access to the instrument configuration data.

It is a subclass of the basic table record access class eccsDB_TABLE_RECORD(4)
but all data members are encapsulated in the private section and can be accesse
only via access methods.

The class mswINS_CONFIG_DATA(4) uses this class to provide access to the full
table.

Since some fields are not yet fully defined, the class is subject to changes
in the future, but they should be backward compatible, involving only
adding new fields and not changing the ones already defined.

 

PUBLIC METHODS


  mswINS_DATA_RECORD();
  mswINS_DATA_RECORD( const mswINS_DATA_RECORD& );
    The class provides a default constructor and a copy constructor,
    required for a standard class implementation.

  mswINS_DATA_RECORD& operator           =( const mswINS_DATA_RECORD& );
    Assignement operator, required for a standard class implementation.

  virtual ccsCOMPL_STAT Pack( void *buffer );
  virtual ccsCOMPL_STAT Unpack( void *buffer );
    Pack() and Unpack() methods are required for the implementation
    of eccsDB_TABLE_RECORD subclasses and are used while
    accessing the database table to convert from RTAP internal
    format to C class members

  virtual const char   *Data();
  virtual ccsCOMPL_STAT Data(const char *msgBuffer);
    Methods to retrieve/set the instrument data configuration
    in the format of a message buffer for the commands GETINSD and
    SELINSD.
    See the command definition table for the process mswControl
    (mswControl.cdt) for detaild on the command format.
    The Data() set method is the only legal way to change the values
    of the fields in the record.

  virtual ccsCOMPL_STAT CleanUp();
    Empties the record, cleaning all data

  const vltLOGICAL IsInsId(const mswINSID &insId) const;
    Checks if a given mswINSID correspond to this record

 Read mode access methods for the record fields:

  const mswINSID   &InsId() const;
    Identifier for a pair (ins,detector)
  const mswINSMODE &InsMode() const;
    Identifier for instrument mode

  const vltINT32    FocusStation() const;
    Instrument focus station (defines in mswDefines.h)
  const char       *FocusStationName() const;
    Instrument focus station NAME

  const vltDOUBLE   RotOffset() const;
    Rotator offset (deg)
  const vltDOUBLE   FocusOffset() const;
    Optimal focus offset (mm)

  const vltDOUBLE   PixelSizeX() const;
  const vltDOUBLE   PixelSizeY() const;
    Detector pixel size in X and Y (arcsec/pixel)

  const vltDOUBLE   VigAreaSizeX() const;
  const vltDOUBLE   VigAreaSizeY() const;
  const vltDOUBLE   VigAreaCntX() const;
  const vltDOUBLE   VigAreaCntY() const;
    Vignetting area: (X,Y) size (arcsec)
    and (X,Y) offset of center
    with respect to center (arcsec)

  const vltDOUBLE   PointAxisOffX() const;
  const vltDOUBLE   PointAxisOffY() const;
    X and Y pointing axis offset (arcsec)

  const char       *DetectorLCU() const;
    environment and process name

 

PRIVATE DATA MEMBERS


    mswINSID    insId;           // identifier for a pair (ins,detector)
    mswINSID    insMode;         // identifier for instrument mode
    vltINT32    focusStation;    // instrument focus station (defines in mswDefines.h)

    vltDOUBLE   rotOffset;       // rotator offset (deg)
    vltDOUBLE   focusOffset;     // optimal focus offset (mm)

    vltDOUBLE   pixelSizeX;      // detector pixel size in X (arcsec/pixel)
    vltDOUBLE   pixelSizeY;      // detector pixel size in Y (arcsec/pixel)

    vltDOUBLE   vigAreaSizeX;    // vignetting area: X size (arcsec)
    vltDOUBLE   vigAreaSizeY;    // vignetting area: Y size (arcsec)
    vltDOUBLE   vigAreaCntX;     // vignetting area: X offset of center
                                 // with respect to center (arcsec)
    vltDOUBLE   vigAreaCntY;     // vignetting area: Y offset of center
                                 // with respect to center (arcsec)

    vltDOUBLE   pointAxisOffX;   // X pointing axis offset (arcsec)
    vltDOUBLE   pointAxisOffY;   // Y pointing axis offset (arcsec)

    vltBYTES256 detectorLCU;     // environment and process name

    fndSTRING cmdString;         // internal buffer

 

ON LINE DATABASE


The class assume that the following table structure
is accessed (see mswINS_CONFIG_DATA.class):

ATTRIBUTE Table          data( mswNO_OF_INSTRUMENTS,
                               BYTES32    insId,
                               BYTES32    insMode,
                               INT32      focusStation,
                               DOUBLE     rotOffset,
                               DOUBLE     focusOffset,
                               DOUBLE     pixelSizeX,
                               DOUBLE     pixelSizeY,
                               DOUBLE     vigAreaSizeX,
                               DOUBLE     vigAreaSizeY,
                               DOUBLE     vigAreaCntX,
                               DOUBLE     vigAreaCntY,
                               DOUBLE     pointAxisOffX,
                               DOUBLE     pointAxisOffY,
                               BYTES256   detectorLcu,
                               DOUBLE     refX,
                               DOUBLE     refY,
                               DOUBLE     adFocusPos)
 

TYPEDEFS


  mswINSID;      // Type to contain and instrument ID definition string
  mswINSMODE;    // Type to contain an instrument mode definition string

 

CAUTIONS


The database record structure is subject to changes, since
not all the features are fully defined at the present time.

 

SEE ALSO


eccsDB_TABLE_RECORD(4), eccsERROR_CLASS(4), mswINS_CONFIG_DATA(4)


 

Index

NAME
SYNOPSIS
PARENT CLASS
DESCRIPTION
PUBLIC METHODS
PRIVATE DATA MEMBERS
ON LINE DATABASE
TYPEDEFS
CAUTIONS
SEE ALSO

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