add format_size wrapper
This commit is contained in:
parent
379f4647b8
commit
83575cdb58
|
@ -96,6 +96,31 @@ static PyObject *pysigar_close(PyObject *self, PyObject *args)
|
||||||
return Py_None;
|
return Py_None;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int pysigar_parse_uint64(PyObject *args, sigar_uint64_t *val)
|
||||||
|
{
|
||||||
|
PyObject *obj;
|
||||||
|
|
||||||
|
if (!PyArg_ParseTuple(args, "O", &obj)) {
|
||||||
|
return !SIGAR_OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
*val = PyInt_AsUnsignedLongLongMask(obj);
|
||||||
|
return SIGAR_OK;
|
||||||
|
}
|
||||||
|
|
||||||
|
static PyObject *pysigar_format_size(PyObject *self, PyObject *args)
|
||||||
|
{
|
||||||
|
char buffer[56];
|
||||||
|
sigar_uint64_t size;
|
||||||
|
|
||||||
|
if (pysigar_parse_uint64(args, &size) == SIGAR_OK) {
|
||||||
|
return PyString_FromString(sigar_format_size(size, buffer));
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static PyMethodDef pysigar_methods[] = {
|
static PyMethodDef pysigar_methods[] = {
|
||||||
{ "close", pysigar_close, METH_NOARGS, NULL },
|
{ "close", pysigar_close, METH_NOARGS, NULL },
|
||||||
PY_SIGAR_METHODS
|
PY_SIGAR_METHODS
|
||||||
|
@ -146,6 +171,7 @@ static PyTypeObject pysigar_PySigarType = {
|
||||||
|
|
||||||
static PyMethodDef pysigar_module_methods[] = {
|
static PyMethodDef pysigar_module_methods[] = {
|
||||||
{ "open", pysigar_open, METH_NOARGS, NULL },
|
{ "open", pysigar_open, METH_NOARGS, NULL },
|
||||||
|
{ "format_size", pysigar_format_size, METH_VARARGS, NULL },
|
||||||
{NULL}
|
{NULL}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue