Apache2-ScoreBoardFile

 view release on metacpan or  search on metacpan

ScoreBoardFile.xs  view on Meta::CPAN

	    init( PerlIO_fileno(IoIFP(io)), &RETVAL );
	  } else {
	    int fd=open(SvPV_nolen(stream), O_RDONLY);
	    if(fd<0) RETVAL=NULL;
	    else {
	      init(fd, &RETVAL);
	      close(fd);
	    }
	  }
	}
      OUTPUT:
	RETVAL

void
summary(obj, ...)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $@
      PPCODE:
        {
	  int i;
	  struct summary result[MAX_STAT_RESULTS];

ScoreBoardFile.xs  view on Meta::CPAN

	    PUSHs(sv_2mortal(newSVnv((double)result[i].count)));
	  }
	}

unsigned int
shmsize(obj)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->prefix.sz;
      OUTPUT:
	RETVAL

unsigned int
server_limit(obj)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->gscore.server_limit;
      OUTPUT:
	RETVAL

unsigned int
thread_limit(obj)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->gscore.thread_limit;
      OUTPUT:
	RETVAL

unsigned int
type(obj)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->gscore.sb_type;
      OUTPUT:
	RETVAL

unsigned int
generation(obj)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->gscore.running_generation;
      OUTPUT:
	RETVAL

unsigned int
lb_limit(obj)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->gscore.lb_limit;
      OUTPUT:
	RETVAL

double
restart_time(obj)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $
      CODE: 
	RETVAL=time2double(obj->gscore.restart_time);
      OUTPUT:
	RETVAL

Apache2::ScoreBoardFile::Process
process(obj, index)
	Apache2::ScoreBoardFile obj
	unsigned int index
      PROTOTYPE: $$
      INIT:
	if( !(0<=index && index<obj->gscore.server_limit) )
	  XSRETURN_UNDEF;
      CODE: 
	RETVAL=&(obj->pscore[index]);
      OUTPUT:
	RETVAL

Apache2::ScoreBoardFile::Worker
worker(obj, pindex, tindex=-1)
	Apache2::ScoreBoardFile obj
	unsigned int pindex
	unsigned int tindex
	PROTOTYPE: $$;$
      INIT:
	int sl=obj->gscore.server_limit;
	int tl=obj->gscore.thread_limit;
	if( items>2 ) pindex=tl*pindex+tindex; /* 2 indices: procnr, threadnr */
	if( !(0<=pindex && pindex<sl*tl) ) XSRETURN_UNDEF;
      CODE: 
        /* warn("sl=%d, tl=%d, start_of_ws=%x\n", sl, tl, */
	/*    (char*)(&(obj->pscore[sl]))-(char*)obj); */
        RETVAL=&(((worker_score*)(&(obj->pscore[sl])))[pindex]);
      OUTPUT:
	RETVAL

void
DESTROY(obj)
	Apache2::ScoreBoardFile obj
      PROTOTYPE: $
      CODE: 
	destroy(obj);

MODULE = Apache2::ScoreBoardFile  PACKAGE = Apache2::ScoreBoardFile::Process

unsigned int
pid(obj)
        Apache2::ScoreBoardFile::Process obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->pid;
      OUTPUT:
	RETVAL

unsigned int
generation(obj)
        Apache2::ScoreBoardFile::Process obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->generation;
      OUTPUT:
	RETVAL

unsigned int
quiescing(obj)
        Apache2::ScoreBoardFile::Process obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->quiescing;
      OUTPUT:
	RETVAL

MODULE = Apache2::ScoreBoardFile  PACKAGE = Apache2::ScoreBoardFile::Worker

int
thread_num(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->thread_num;
      OUTPUT:
	RETVAL

unsigned int
pid(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->pid;
      OUTPUT:
	RETVAL

unsigned int
generation(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->generation;
      OUTPUT:
	RETVAL

char
status(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
        unsigned status=obj->status;
        if( status>=sizeof(ws_status_letters)-1 ) {
	  RETVAL='?';
	} else {
	  RETVAL=ws_status_letters[status];
	}
      OUTPUT:
	RETVAL

unsigned int
access_count(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->access_count;
      OUTPUT:
	RETVAL

unsigned int
bytes_served(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->bytes_served;
      OUTPUT:
	RETVAL

unsigned int
my_access_count(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->my_access_count;
      OUTPUT:
	RETVAL

unsigned int
my_bytes_served(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->my_bytes_served;
      OUTPUT:
	RETVAL

unsigned int
conn_count(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->conn_count;
      OUTPUT:
	RETVAL

unsigned int
conn_bytes(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->conn_bytes;
      OUTPUT:
	RETVAL

double
start_time(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=time2double(obj->start_time);
      OUTPUT:
	RETVAL

double
stop_time(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=time2double(obj->stop_time);
      OUTPUT:
	RETVAL

double
last_used(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=time2double(obj->last_used);
      OUTPUT:
	RETVAL

char*
client(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->client;
      OUTPUT:
	RETVAL

char*
request(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->request;
      OUTPUT:
	RETVAL

char*
vhost(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
	RETVAL=obj->vhost;
      OUTPUT:
	RETVAL

unsigned int
tid(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
#if APR_HAS_THREADS
	RETVAL=obj->tid;
#else
	RETVAL=(unsigned)-1;
#endif
      OUTPUT:
	RETVAL

unsigned int
utime(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
#if HAVE_TIMES
	RETVAL=obj->times.tms_utime;
#else
	RETVAL=(unsigned)-1;
#endif
      OUTPUT:
	RETVAL

unsigned int
stime(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
#if HAVE_TIMES
	RETVAL=obj->times.tms_stime;
#else
	RETVAL=(unsigned)-1;
#endif
      OUTPUT:
	RETVAL

unsigned int
cutime(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
#if HAVE_TIMES
	RETVAL=obj->times.tms_cutime;
#else
	RETVAL=(unsigned)-1;
#endif
      OUTPUT:
	RETVAL

unsigned int
cstime(obj)
        Apache2::ScoreBoardFile::Worker obj
      PROTOTYPE: $
      CODE: 
#if HAVE_TIMES
	RETVAL=obj->times.tms_cstime;
#else
	RETVAL=(unsigned)-1;
#endif
      OUTPUT:
	RETVAL

 # Local Variables:
 # mode: c
 # End:

ppport.h  view on Meta::CPAN

PTR2ul|5.007001||p
PTRV|5.006000||p
PUSHMARK|||
PUSH_MULTICALL||5.011000|
PUSHi|||
PUSHmortal|5.009002||p
PUSHn|||
PUSHp|||
PUSHs|||
PUSHu|5.004000||p
PUTBACK|||
PerlIO_clearerr||5.007003|
PerlIO_close||5.007003|
PerlIO_context_layers||5.009004|
PerlIO_eof||5.007003|
PerlIO_error||5.007003|
PerlIO_fileno||5.007003|
PerlIO_fill||5.007003|
PerlIO_flush||5.007003|
PerlIO_get_base||5.007003|
PerlIO_get_bufsiz||5.007003|

ppport.h  view on Meta::CPAN

{
    dSP;
    SV* sv = newSVpv(p, 0);

    PUSHMARK(sp);
    eval_sv(sv, G_SCALAR);
    SvREFCNT_dec(sv);

    SPAGAIN;
    sv = POPs;
    PUTBACK;

    if (croak_on_error && SvTRUE(GvSV(errgv)))
	croak(SvPVx(GvSV(errgv), na));

    return sv;
}

#endif
#endif

typemap  view on Meta::CPAN

Apache2::ScoreBoardFile			MY_OBJECT
Apache2::ScoreBoardFile::Process	MY_OBJECT
Apache2::ScoreBoardFile::Worker		MY_OBJECT

INPUT
MY_OBJECT
        if (sv_derived_from($arg, \"${ntype}\")) {
            IV tmp = SvIV((SV*)SvRV($arg));
            $var = INT2PTR($type,tmp);
        }
        else
            Perl_croak(aTHX_ \"%s: %s is not of type %s\",
                        ${$ALIAS?\q[GvNAME(CvGV(cv))]:\qq[\"$pname\"]},
                        \"$var\", \"$ntype\")


OUTPUT
MY_OBJECT
        sv_setref_pv($arg, \"${type}\", (void*)$var);



( run in 0.367 second using v1.01-cache-2.11-cpan-c6e0e5ac2a7 )