GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> FMX / dev > fmxshr / rhel5-32


Interface   Data Structures   File List   Data Fields   Globals  

Defines | Typedefs | Enumerations | Functions
FMX_pubdefs.h File Reference

Public definitions for the ITC package. More...

Defines

#define FMX_L_ENUM_TABLES   (6)
 Number of enumeration tables FMX recognizes.

Typedefs

typedef struct _FMX_Connection FMX_Connection
 Typedef for struct _FMX_Connection.
typedef enum _FMX_EnumTableList FMX_EnumTableList
 Typedef for enum _FMX_EnumTableList.
typedef enum _FMX_FileGroup FMX_FileGroup
 Typedef for enum _FMX_FileGroup.
typedef enum _FMX_CaptureModule FMX_CaptureModule
 Typedef for enum _FMX_CaptureModule.
typedef unsigned int FMX_cb_scanFilesByKey (void *prm, unsigned int key, const char *dir, FMX_FileGroup group, unsigned int flight, unsigned int visible, const char *tag, unsigned int index, unsigned int size, const char *date, const char *name, const char *pkg, const char *ver, const char *con, FMX_CaptureModule captured, unsigned int contents, unsigned int count, const unsigned int *dat)
 Signature for a FMX_scanFilesByKey callback function.
typedef unsigned int FMX_cb_scanFOFmembers (void *prm, unsigned int visible, unsigned int key, const char *dir, unsigned int index, unsigned int size, const char *date, const char *name)
 Signature for a FMX_scanFOFmembers callback function.
typedef unsigned int FMX_cb_scanSBSmembers (void *prm, unsigned int visible, unsigned int key, const char *dir, unsigned int index, unsigned int size, const char *date, const char *name, const char *pkg, const char *ver, const char *con, FMX_CaptureModule captured, unsigned int contents, unsigned int count, const unsigned int *dat)
 Signature for a FMX_scanSBSmembers callback function.

Enumerations

enum  _FMX_EnumTableList {
  FMX_ENUM_TABLE_DEVICE = 0,
  FMX_ENUM_TABLE_FILETYPE = 1,
  FMX_ENUM_TABLE_HOST = 2,
  FMX_ENUM_TABLE_INSTRUMENT = 3,
  FMX_ENUM_TABLE_NODE = 4,
  FMX_ENUM_TABLE_TAG = 5
}
 Enumeration of enumeration tables FMX recognizes (!) More...
enum  _FMX_FileGroup {
  FMX_GRP_UNKNOWN = -1,
  FMX_GRP_SIMPLE = 0,
  FMX_GRP_COMPOUND = 1,
  FMX_GRP_MODULE = 2
}
 Enumeration of the groups filetypes can belong to. More...
enum  _FMX_CaptureModule {
  FMX_CAP_MOD_NONE = 0,
  FMX_CAP_MOD_CDM = 1,
  FMX_CAP_MOD_REL = 2
}
 Enumeration of the methods used to capture extended module information. More...

Functions

unsigned int FMX_connect (FMX_Connection **con, const char *host, const char *user, const char *pass, int port)
 Create a connection to the database.
unsigned int FMX_disconnect (FMX_Connection *ucb)
 Break a connection to the database.
unsigned int FMX_findCDMbyKey (FMX_Connection *ucb, unsigned int key, const char *tag, unsigned int absolute, char *nambuf, unsigned int bufmax, unsigned int *namlen)
 Return the filename of a CDM file corresponding to key.
unsigned int FMX_initialize (void)
 Initialize the FMX client.
unsigned int FMX_scanFilesByKey (FMX_Connection *ucb, unsigned int key, FMX_cb_scanFilesByKey rtn, void *prm)
unsigned int FMX_scanFOFmembers (FMX_Connection *ucb, unsigned int key, unsigned int flight, FMX_cb_scanFOFmembers rtn, void *prm)
unsigned int FMX_scanSBSmembers (FMX_Connection *ucb, unsigned int key, const char *tag, unsigned int flight, FMX_cb_scanSBSmembers rtn, void *prm)
void FMX_shutdown (void)
 Shut down the FMX client.

Detailed Description

Public definitions for the ITC package.

CVS $Id: FMX_pubdefs.h,v 1.8 2011/03/25 20:42:51 apw Exp $
Author:
A.P.Waite

Typedef Documentation

Signature for a FMX_scanFilesByKey callback function.

< "List key" file processing routine

Signature for a FMX_scanFOFmembers callback function.

< Scan the members of a FOF file

Signature for a FMX_scanSBSmembers callback function.

< Scan the members of an SBS file


Enumeration Type Documentation

Enumeration of the methods used to capture extended module information.

Enumerator:
FMX_CAP_MOD_NONE 

No information captured

FMX_CAP_MOD_CDM 

Search CDM macro information

FMX_CAP_MOD_REL 

Search shareable symbols

Enumeration of enumeration tables FMX recognizes (!)

Enumerator:
FMX_ENUM_TABLE_DEVICE 

Device table

FMX_ENUM_TABLE_FILETYPE 

Filetype table

FMX_ENUM_TABLE_HOST 

Host table

FMX_ENUM_TABLE_INSTRUMENT 

Instrument table

FMX_ENUM_TABLE_NODE 

Node table

FMX_ENUM_TABLE_TAG 

Tag table

Enumeration of the groups filetypes can belong to.

Enumerator:
FMX_GRP_UNKNOWN 

Unknown filetype membership

FMX_GRP_SIMPLE 

Member of group "simple"

FMX_GRP_COMPOUND 

Member of group "compound"

FMX_GRP_MODULE 

Member of group "module"


Function Documentation

unsigned int FMX_connect ( FMX_Connection **  con,
const char *  host,
const char *  user,
const char *  pass,
int  port 
)

Create a connection to the database.

Parameters:
con(out) Connection handle
host(in) Host name (NULL: take from $FMX_C_FDB)
user(in) User name (NULL: take from .my.cnf)
pass(in) Password (NULL: take from .my.cnf)
port(in) Connection handle
Return values:
FMX_ALLOCBUFLocal (stack) buffer too small
FMX_ALLOCMEMCannot allocate sufficient memory (dynamic)
FMX_EVMISSExpected environment variable not found
FMX_MYSQLCONCannot select database status from global table
FMX_LINKMISTExpected file system link not found
FMX_MYCNFBADUser's .my.cnf file insufficiently protected
FMX_MYCNFMISCannot find user's .my.cnf file
FMX_MYSQLINTCannot initialize a MySQL handle
FMX_MYSQLCONCannot connect to MySQL database
FMX_SUCCESSSuccess
FMX_USERACCCannot determine access privileges for user
FMX_USERIDCannot identify user from database tables
FMX_USERNOTUser has no privileges on this database

References _FMX_Connection::access, FMX_fcb, FMX_K_PORT, FMX_L_BUFFER, FMX_USR_LOGICIAN, FMX_USR_OPTICIAN, FMX_USR_PHYSICIAN, FMX_USR_TECHNICIAN, _FMX_Connection::host, _FMX_Connection::mysql, _FMX_Connection::next, _FMX_Connection::role, _FMX_Control::root, _FMX_Connection::root, s__my_cnf, s_fmx, s_FMX_C_FDB, s_FMX_HOST, s_HOME, s_production, s_Y, _FMX_Connection::self, and _FMX_Connection::user.

unsigned int FMX_disconnect ( FMX_Connection ucb)

Break a connection to the database.

Parameters:
ucb(in) User connection block
Return values:
FMX_UCBMISSConnection block not found in list
FMX_UCBNOTInvalid connection block
FMX_SUCCESSSuccess

References FMX_fcb, FMX_freeEnumTable(), FMX_L_ENUM_TABLES, _FMX_Connection::host, _FMX_Connection::mysql, _FMX_Connection::next, _FMX_Connection::root, _FMX_Control::root, _FMX_Connection::self, and _FMX_Connection::user.

Referenced by FMX_shutdown().

unsigned int FMX_findCDMbyKey ( FMX_Connection ucb,
unsigned int  key,
const char *  tag,
unsigned int  absolute,
char *  nambuf,
unsigned int  bufmax,
unsigned int *  namlen 
)

Return the filename of a CDM file corresponding to key.

Parameters:
ucb(in) Database connection handle
key(in) Logical file key to scan
tag(in) Architecture tag name
absolute(in) Request absolute file name
nambuf(in) Buffer into which to place the file name
bufmax(in) Length of nambuf
namlen(in) Actual length of file name
Return values:
FMX_NULLPNTRNULL pointer
FMX_SUCCESSSuccess
FMX_TAGTYPEUnknown architecture (tag) type
FMX_UCBNOTInvalid connection block

References findCDMbyKey(), FMX_ENUM_TABLE_TAG, FMX_findEnumByName(), FMX_rollback(), and _FMX_Connection::self.

unsigned int FMX_initialize ( void  )

Initialize the FMX client.

Return values:
FMX_FCBINITFMX control block already initialized
FMX_ALLOCMEMCannot allocate memory for FMX control block
FMX_SUCCESSSuccess
void FMX_shutdown ( void  )

Shut down the FMX client.

Return values:
FMX_SUCCESSSuccess

References FMX_disconnect(), and _FMX_Control::root.