MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


System Event Library Functions
                               syseventgetclassname(3SYSEVENT)



NAME
     syseventgetclassname,         syseventgetsubclassname,
     syseventgetsize, syseventgetseq, syseventgettime - get
     class name, subclass name, ID or buffer size of event

SYNOPSIS
     cc [flag...]  file ...-lsysevent [library...]
     #include 

     char *syseventgetclassname(syseventt *ev);


     char *syseventgetsubclassname(syseventt *ev);


     int syseventgetsize(syseventt *ev);


     uint64t syseventgetseq(syseventt *ev);


     void syseventgettime(syseventt *ev, hrtimet *etimep);


PARAMETERS
     ev        handle to event


     etimep    pointer to high resolution event time variable


DESCRIPTION
     The              syseventgetclassname()               and
     syseventgetsubclassname() functions return, respectively,
     the class and subclass names for the provided event ev.


     The syseventgetsize() function returns  the  size  of  the
     event buffer, ev.


     The  syseventgetseq()  function  returns  a  unique  event
     sequence number of event ev. The sequence number is reset on
     every system boot.


     The syseventgettime() function writes the time  the  event
     was  published  into  the variable pointed to by etimep. The
     event time is added to the event just before it is put  into
     the kernel internal event queue.




SunOS 5.11           Last change: 1 Apr 2003                    1






System Event Library Functions
                               syseventgetclassname(3SYSEVENT)



EXAMPLES
     Example 1 Parse sysevent header information.


     The following example  parses  sysevent  header  information
     from an application's event handler.


       hrtimet lastevtime;
       unit64t lastevseq;

       void
       eventhandler(syseventt *ev)
       {
                syseventt *newev;
                int evsz;
                hrtimet evtime;
                uint64t evseq;


                /* Filter on class and subclass */
                if (strcmp(ECPRIV, syseventgetclassname(ev)) != 0) {
                        return;
                } else if (strcmp("ESCMYSUBCLAS,
                    syseventgetsubclassname(ev)) != 0) {
                        return;
                }

                /*
                 * Check for replayed sysevent, time must
                 * be greater than previously recorded.
                 */
                syseventgeteventtime(ev, &evtime);
                evseq = syseventgetseq(ev);
                if (evtime < lastevtime 
                    (evtime == lastevtime && evseq <=
                    lastevseq)) {
                        return;
                }

                lastevtime = evtime;
                lastevseq = evseq;

                /* Store event for later processing */
                evsz = syseventgetsize(ev):
                newev (syseventt *)malloc(evsz);
                bcopy(ev, newev, evsz);
                queueevent(newev);
       }





SunOS 5.11           Last change: 1 Apr 2003                    2






System Event Library Functions
                               syseventgetclassname(3SYSEVENT)



ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Evolving                    
    
     MT-Level                     MT-Safe                     
    


SEE ALSO
     attributes(5)





































SunOS 5.11           Last change: 1 Apr 2003                    3






System Event Library Functions
                               syseventgetclassname(3SYSEVENT)






















































SunOS 5.11           Last change: 1 Apr 2003                    4






OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™