# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.0
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.

from sys import version_info as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError('Python 2.7 or later required')

# Import the low-level C/C++ module
if __package__ or '.' in __name__:
    from . import _xenstat
else:
    import _xenstat

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
    if name == "thisown":
        return self.this.own(value)
    if name == "this":
        if type(value).__name__ == 'SwigPyObject':
            self.__dict__[name] = value
            return
    method = class_type.__swig_setmethods__.get(name, None)
    if method:
        return method(self, value)
    if not static:
        object.__setattr__(self, name, value)
    else:
        raise AttributeError("You cannot add attributes to %s" % self)


def _swig_setattr(self, class_type, name, value):
    return _swig_setattr_nondynamic(self, class_type, name, value, 0)


def _swig_getattr(self, class_type, name):
    if name == "thisown":
        return self.this.own()
    method = class_type.__swig_getmethods__.get(name, None)
    if method:
        return method(self)
    raise AttributeError("'%s' object has no attribute '%s'" % (class_type.__name__, name))


def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)



def xenstat_init():
    return _xenstat.xenstat_init()

def xenstat_uninit(handle):
    return _xenstat.xenstat_uninit(handle)
XENSTAT_VCPU = _xenstat.XENSTAT_VCPU
XENSTAT_NETWORK = _xenstat.XENSTAT_NETWORK
XENSTAT_XEN_VERSION = _xenstat.XENSTAT_XEN_VERSION
XENSTAT_VBD = _xenstat.XENSTAT_VBD
XENSTAT_ALL = _xenstat.XENSTAT_ALL

def xenstat_get_node(handle, flags):
    return _xenstat.xenstat_get_node(handle, flags)

def xenstat_free_node(node):
    return _xenstat.xenstat_free_node(node)

def xenstat_node_domain(node, domid):
    return _xenstat.xenstat_node_domain(node, domid)

def xenstat_node_domain_by_index(node, index):
    return _xenstat.xenstat_node_domain_by_index(node, index)

def xenstat_node_xen_version(node):
    return _xenstat.xenstat_node_xen_version(node)

def xenstat_node_tot_mem(node):
    return _xenstat.xenstat_node_tot_mem(node)

def xenstat_node_free_mem(node):
    return _xenstat.xenstat_node_free_mem(node)

def xenstat_node_num_domains(node):
    return _xenstat.xenstat_node_num_domains(node)

def xenstat_node_num_cpus(node):
    return _xenstat.xenstat_node_num_cpus(node)

def xenstat_node_cpu_hz(node):
    return _xenstat.xenstat_node_cpu_hz(node)

def xenstat_domain_id(domain):
    return _xenstat.xenstat_domain_id(domain)

def xenstat_domain_name(domain):
    return _xenstat.xenstat_domain_name(domain)

def xenstat_domain_cpu_ns(domain):
    return _xenstat.xenstat_domain_cpu_ns(domain)

def xenstat_domain_num_vcpus(domain):
    return _xenstat.xenstat_domain_num_vcpus(domain)

def xenstat_domain_vcpu(domain, vcpu):
    return _xenstat.xenstat_domain_vcpu(domain, vcpu)

def xenstat_domain_cur_mem(domain):
    return _xenstat.xenstat_domain_cur_mem(domain)

def xenstat_domain_max_mem(domain):
    return _xenstat.xenstat_domain_max_mem(domain)

def xenstat_domain_ssid(domain):
    return _xenstat.xenstat_domain_ssid(domain)

def xenstat_domain_dying(domain):
    return _xenstat.xenstat_domain_dying(domain)

def xenstat_domain_crashed(domain):
    return _xenstat.xenstat_domain_crashed(domain)

def xenstat_domain_shutdown(domain):
    return _xenstat.xenstat_domain_shutdown(domain)

def xenstat_domain_paused(domain):
    return _xenstat.xenstat_domain_paused(domain)

def xenstat_domain_blocked(domain):
    return _xenstat.xenstat_domain_blocked(domain)

def xenstat_domain_running(domain):
    return _xenstat.xenstat_domain_running(domain)

def xenstat_domain_num_networks(arg1):
    return _xenstat.xenstat_domain_num_networks(arg1)

def xenstat_domain_network(domain, network):
    return _xenstat.xenstat_domain_network(domain, network)

def xenstat_domain_num_vbds(arg1):
    return _xenstat.xenstat_domain_num_vbds(arg1)

def xenstat_domain_vbd(domain, vbd):
    return _xenstat.xenstat_domain_vbd(domain, vbd)

def xenstat_vcpu_online(vcpu):
    return _xenstat.xenstat_vcpu_online(vcpu)

def xenstat_vcpu_ns(vcpu):
    return _xenstat.xenstat_vcpu_ns(vcpu)

def xenstat_network_id(network):
    return _xenstat.xenstat_network_id(network)

def xenstat_network_rbytes(network):
    return _xenstat.xenstat_network_rbytes(network)

def xenstat_network_rpackets(network):
    return _xenstat.xenstat_network_rpackets(network)

def xenstat_network_rerrs(network):
    return _xenstat.xenstat_network_rerrs(network)

def xenstat_network_rdrop(network):
    return _xenstat.xenstat_network_rdrop(network)

def xenstat_network_tbytes(network):
    return _xenstat.xenstat_network_tbytes(network)

def xenstat_network_tpackets(network):
    return _xenstat.xenstat_network_tpackets(network)

def xenstat_network_terrs(network):
    return _xenstat.xenstat_network_terrs(network)

def xenstat_network_tdrop(network):
    return _xenstat.xenstat_network_tdrop(network)

def xenstat_vbd_type(vbd):
    return _xenstat.xenstat_vbd_type(vbd)

def xenstat_vbd_dev(vbd):
    return _xenstat.xenstat_vbd_dev(vbd)

def xenstat_vbd_oo_reqs(vbd):
    return _xenstat.xenstat_vbd_oo_reqs(vbd)

def xenstat_vbd_rd_reqs(vbd):
    return _xenstat.xenstat_vbd_rd_reqs(vbd)

def xenstat_vbd_wr_reqs(vbd):
    return _xenstat.xenstat_vbd_wr_reqs(vbd)

def xenstat_vbd_rd_sects(vbd):
    return _xenstat.xenstat_vbd_rd_sects(vbd)

def xenstat_vbd_wr_sects(vbd):
    return _xenstat.xenstat_vbd_wr_sects(vbd)

def xenstat_vbd_error(vbd):
    return _xenstat.xenstat_vbd_error(vbd)


