"Fossies" - the Fresh Open Source Software Archive

Member "opensaf-5.21.09/src/ais/include/saAis.h" (14 Sep 2021, 5319 Bytes) of package /linux/misc/opensaf-5.21.09.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "saAis.h" see the Fossies "Dox" file reference documentation and the latest Fossies "Diffs" side-by-side code changes report: 5.21.06_vs_5.21.09.

    1 /*******************************************************************************
    2 **
    3 ** FILE:
    4 **   SaAis.h
    5 **
    6 ** DESCRIPTION: 
    7 **   This file contains the prototypes and type definitions required by all
    8 **   Service Availability(TM) Forum's AIS services. 
    9 **   
   10 ** SPECIFICATION VERSION:
   11 **   SAI-AIS-CPROG-B.05.01
   12 **
   13 ** DATE: 
   14 **   Wed Oct 08 2008
   15 **
   16 ** LEGAL:
   17 **   OWNERSHIP OF SPECIFICATION AND COPYRIGHTS.
   18 **
   19 ** Copyright 2008 by the Service Availability Forum. All rights reserved.
   20 **
   21 ** Permission to use, copy, modify, and distribute this software for any
   22 ** purpose without fee is hereby granted, provided that this entire notice
   23 ** is included in all copies of any software which is or includes a copy
   24 ** or modification of this software and in all copies of the supporting
   25 ** documentation for such software.
   26 **
   27 ** THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED
   28 ** WARRANTY.  IN PARTICULAR, THE SERVICE AVAILABILITY FORUM DOES NOT MAKE ANY
   29 ** REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY
   30 ** OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.
   31 **
   32 *******************************************************************************/
   33 
   34 #ifndef _SA_AIS_H
   35 #define _SA_AIS_H
   36 
   37 #ifdef  __cplusplus
   38 extern "C" {
   39 #endif
   40 
   41 typedef char                  SaInt8T;
   42 typedef short                 SaInt16T;
   43 typedef int                   SaInt32T;
   44 typedef long long             SaInt64T;
   45 typedef unsigned char         SaUint8T;
   46 typedef unsigned short        SaUint16T;
   47 typedef unsigned int          SaUint32T;
   48 typedef unsigned long long    SaUint64T;
   49 
   50 /** Types used by the NTF/IMMS service **/
   51 typedef float                 SaFloatT;
   52 typedef double                SaDoubleT;
   53 typedef char*                 SaStringT;
   54 typedef const char*           SaConstStringT;
   55 
   56 typedef SaInt64T              SaTimeT;
   57 typedef SaUint64T             SaInvocationT;
   58 typedef SaUint64T             SaSizeT;
   59 typedef SaUint64T             SaOffsetT;
   60 typedef SaUint64T             SaSelectionObjectT;
   61 
   62 #define SA_TIME_END              0x7FFFFFFFFFFFFFFFLL
   63 #define SA_TIME_BEGIN            0x0LL
   64 #define SA_TIME_UNKNOWN          0x8000000000000000LL
   65 
   66 #define SA_TIME_ONE_MICROSECOND 1000LL
   67 #define SA_TIME_ONE_MILLISECOND 1000000LL
   68 #define SA_TIME_ONE_SECOND      1000000000LL
   69 #define SA_TIME_ONE_MINUTE      60000000000LL
   70 #define SA_TIME_ONE_HOUR        3600000000000LL
   71 #define SA_TIME_ONE_DAY         86400000000000LL
   72 #define SA_TIME_MAX             SA_TIME_END
   73 
   74 #ifndef SA_EXTENDED_NAME_SOURCE
   75 #define SA_MAX_NAME_LENGTH 256
   76 #endif /* SA_EXTENDED_NAME_SOURCE */
   77 
   78 #define SA_TRACK_CURRENT       0x01
   79 #define SA_TRACK_CHANGES       0x02
   80 #define SA_TRACK_CHANGES_ONLY  0x04
   81 #define SA_TRACK_LOCAL         0x08
   82 #define SA_TRACK_START_STEP    0x10
   83 #define SA_TRACK_VALIDATE_STEP 0x20
   84 
   85 typedef enum {
   86     SA_FALSE = 0,
   87     SA_TRUE = 1
   88 } SaBoolT;
   89 
   90 typedef enum {
   91     SA_DISPATCH_ONE = 1,
   92     SA_DISPATCH_ALL = 2,
   93     SA_DISPATCH_BLOCKING = 3
   94 } SaDispatchFlagsT;
   95 
   96 typedef enum {
   97    SA_AIS_OK = 1,
   98    SA_AIS_ERR_LIBRARY = 2,
   99    SA_AIS_ERR_VERSION = 3,
  100    SA_AIS_ERR_INIT = 4,
  101    SA_AIS_ERR_TIMEOUT = 5,
  102    SA_AIS_ERR_TRY_AGAIN = 6,
  103    SA_AIS_ERR_INVALID_PARAM = 7,
  104    SA_AIS_ERR_NO_MEMORY = 8,
  105    SA_AIS_ERR_BAD_HANDLE = 9,
  106    SA_AIS_ERR_BUSY = 10,
  107    SA_AIS_ERR_ACCESS = 11,
  108    SA_AIS_ERR_NOT_EXIST = 12,
  109    SA_AIS_ERR_NAME_TOO_LONG = 13,
  110    SA_AIS_ERR_EXIST = 14,
  111    SA_AIS_ERR_NO_SPACE = 15,
  112    SA_AIS_ERR_INTERRUPT =16,
  113    SA_AIS_ERR_NAME_NOT_FOUND = 17,
  114    SA_AIS_ERR_NO_RESOURCES = 18,
  115    SA_AIS_ERR_NOT_SUPPORTED = 19,
  116    SA_AIS_ERR_BAD_OPERATION = 20,
  117    SA_AIS_ERR_FAILED_OPERATION = 21,
  118    SA_AIS_ERR_MESSAGE_ERROR = 22,
  119    SA_AIS_ERR_QUEUE_FULL = 23,
  120    SA_AIS_ERR_QUEUE_NOT_AVAILABLE = 24,
  121    SA_AIS_ERR_BAD_FLAGS = 25,
  122    SA_AIS_ERR_TOO_BIG = 26,
  123    SA_AIS_ERR_NO_SECTIONS = 27,
  124    SA_AIS_ERR_NO_OP = 28,          
  125    SA_AIS_ERR_REPAIR_PENDING = 29,
  126    SA_AIS_ERR_NO_BINDINGS = 30,
  127    SA_AIS_ERR_UNAVAILABLE = 31,
  128    SA_AIS_ERR_CAMPAIGN_ERROR_DETECTED = 32,
  129    SA_AIS_ERR_CAMPAIGN_PROC_FAILED = 33,
  130    SA_AIS_ERR_CAMPAIGN_CANCELED = 34,
  131    SA_AIS_ERR_CAMPAIGN_FAILED = 35,
  132    SA_AIS_ERR_CAMPAIGN_SUSPENDED = 36,
  133    SA_AIS_ERR_CAMPAIGN_SUSPENDING = 37,
  134    SA_AIS_ERR_ACCESS_DENIED = 38,
  135    SA_AIS_ERR_NOT_READY = 39,
  136    SA_AIS_ERR_DEPLOYMENT = 40
  137 } SaAisErrorT;
  138 
  139 typedef enum {
  140     SA_SVC_HPI  =  1,
  141     SA_SVC_AMF  =  2,
  142     SA_SVC_CLM  =  3,
  143     SA_SVC_CKPT =  4,
  144     SA_SVC_EVT  =  5,
  145     SA_SVC_MSG  =  6,
  146     SA_SVC_LCK  =  7,
  147     SA_SVC_IMMS =  8, 
  148     SA_SCV_LOG  =  9,
  149     SA_SVC_NTF  =  10,
  150     SA_SVC_NAM  =  11,
  151     SA_SVC_TMR  =  12,
  152     SA_SVC_SMF  =  13,
  153     SA_SVC_SEC  =  14,
  154     SA_SVC_PLM  =  15
  155 } SaServicesT;
  156 
  157 typedef struct {
  158    SaSizeT   bufferSize;
  159    SaUint8T  *bufferAddr;
  160 } SaAnyT;
  161 
  162 #ifndef SA_EXTENDED_NAME_SOURCE
  163 typedef struct {
  164     SaUint16T length;
  165     SaUint8T value[SA_MAX_NAME_LENGTH];
  166 } SaNameT;
  167 #endif /* SA_EXTENDED_NAME_SOURCE */
  168 
  169 typedef struct {
  170     SaUint8T releaseCode;
  171     SaUint8T majorVersion;
  172     SaUint8T minorVersion;
  173 } SaVersionT;
  174 
  175 typedef union {
  176     SaInt64T int64Value;
  177     SaUint64T uint64Value;
  178     SaTimeT timeValue;
  179     SaFloatT floatValue;
  180     SaDoubleT doubleValue;
  181 } SaLimitValueT;
  182 
  183 extern SaConstStringT
  184 saAisStrError(
  185     SaAisErrorT error_number);
  186 
  187 #ifdef  __cplusplus
  188 }
  189 #endif
  190 
  191 #include <saAis_B_5_14.h>
  192 
  193 #endif  /* _SA_AIS_H */
  194