def __init__(self, session): """ Creates a Emane instance. :param core.session.Session session: session this manager is tied to :return: nothing """ ConfigurableManager.__init__(self) self.session = session self._emane_nodes = {} self._emane_node_lock = threading.Lock() self._ifccounts = {} self._ifccountslock = threading.Lock() # Port numbers are allocated from these counters self.platformport = self.session.get_config_item_int( "emane_platform_port", 8100) self.transformport = self.session.get_config_item_int( "emane_transform_port", 8200) self.doeventloop = False self.eventmonthread = None # model for global EMANE configuration options self.emane_config = EmaneGlobalModel(session, None) session.broker.handlers.add(self.handledistributed) self.service = None self.event_device = None self._modelclsmap = {self.emane_config.name: self.emane_config} self.service = None self.emane_check()
def __init__(self, session): ConfigurableManager.__init__(self, session) self.verbose = self.session.getcfgitembool('verbose', False) self._objs = {} self._objslock = threading.Lock() self._ifccounts = {} self._ifccountslock = threading.Lock() self._modelclsmap = {} # Port numbers are allocated from these counters self.platformport = self.session.getcfgitemint('emane_platform_port', 8100) self.transformport = self.session.getcfgitemint('emane_transform_port', 8200) # model for global EMANE configuration options self.emane_config = EmaneGlobalModel(session, None, self.verbose) session.broker.handlers += (self.handledistributed, ) self.loadmodels() self.initeventservice() self.doeventloop = False self.eventmonthread = None # EMANE 0.7.4 support -- to be removed when 0.7.4 support is deprecated self.emane074 = False try: tmp = emaneeventlocation.EventLocation(1) # check if yaw parameter is supported by Location Events # if so, we have EMANE 0.8.1+; if not, we have EMANE 0.7.4/earlier tmp.set(0, 1, 2, 2, 2, 3) except TypeError: self.emane074 = True except Exception: pass
def __init__(self, session, verbose = False): ConfigurableManager.__init__(self, session) self.session_id_master = None self.myip = None self.verbose = verbose # dict containing tuples of (host, port, sock) self.servers = {} self.servers_lock = threading.Lock() self.addserver("localhost", None, None) # dict containing node number to server name mapping self.nodemap = {} # this lock also protects self.nodecounts self.nodemap_lock = threading.Lock() # reference counts of nodes on servers self.nodecounts = { } self.bootcount = 0 # list of node numbers that are link-layer nodes (networks) self.nets = [] # list of node numbers that are PhysicalNode nodes self.phys = [] # allows for other message handlers to process API messages (e.g. EMANE) self.handlers = () # dict with tunnel key to tunnel device mapping self.tunnels = {} self.dorecvloop = False self.recvthread = None
def __init__(self, session, verbose = False): ConfigurableManager.__init__(self, session) self.session_id_master = None self.myip = None self.verbose = verbose # dict containing tuples of (host, port, sock) self.servers = {} self.servers_lock = threading.Lock() self.addserver("localhost", None, None) # dict containing node number to server name mapping self.nodemap = {} # this lock also protects self.nodecounts self.nodemap_lock = threading.Lock() # reference counts of nodes on servers self.nodecounts = { } self.bootcount = 0 # list of node numbers that are link-layer nodes (networks) self.nets = [] # list of node numbers that are PhysicalNode nodes self.phys = [] # allows for other message handlers to process API messages (e.g. EMANE) self.handlers = () # dict with tunnel key to tunnel device mapping self.tunnels = {} self.dorecvloop = False self.recvthread = None self.recvbuffer = {}
def __init__(self, session): """ Creates a CoreBroker instance. :param core.session.Session session: session this manager is tied to :return: nothing """ ConfigurableManager.__init__(self) self.session = session self.session_clients = [] self.session_id_master = None self.myip = None # dict containing tuples of (host, port, sock) self.servers = {} self.servers_lock = threading.Lock() self.addserver("localhost", None, None) # dict containing node number to server name mapping self.nodemap = {} # this lock also protects self.nodecounts self.nodemap_lock = threading.Lock() # reference counts of nodes on servers self.nodecounts = {} # set of node numbers that are link-layer nodes (networks) self.network_nodes = set() # set of node numbers that are PhysicalNode nodes self.physical_nodes = set() # allows for other message handlers to process API messages (e.g. EMANE) self.handlers = set() self.handlers.add(self.handle_distributed) # dict with tunnel key to tunnel device mapping self.tunnels = {} self.dorecvloop = False self.recvthread = None self.bootcount = 0
def __init__(self, session): ConfigurableManager.__init__(self, session) self.verbose = self.session.getcfgitembool('verbose', False) # configurations for basic range, indexed by WLAN node number, are # stored in self.configs # mapping from model names to their classes self._modelclsmap = {} # dummy node objects for tracking position of nodes on other servers self.phys = {} self.physnets = {} self.session.broker.handlers += (self.physnodehandlelink, ) self.register()
def __init__(self, session): ConfigurableManager.__init__(self, session) # dict of default services tuples, key is node type self.defaultservices = {} # dict of tuple of service objects, key is node number self.customservices = {} importcmd = "from core.services import *" exec(importcmd) paths = self.session.getcfgitem('custom_services_dir') if paths: for path in paths.split(','): path = path.strip() self.importcustom(path)
def __init__(self): """ Creates a MobilityManager instance. :return: nothing """ ConfigurableManager.__init__(self) self.reset() self.zonemap = {} self.refxyz = (0.0, 0.0, 0.0) self.refscale = 1.0 self.zoneshifts = {} self.refgeo = (0.0, 0.0, 0.0) for n, l in utm.ZONE_LETTERS: self.zonemap[l] = n
def __init__(self, session): """ Creates a CoreServices instance. :param core.session.Session session: session this manager is tied to :return: nothing """ ConfigurableManager.__init__(self) self.session = session # dict of default services tuples, key is node type self.defaultservices = {} # dict of tuple of service objects, key is node number self.customservices = {} # TODO: remove need for cyclic import from core.services import startup self.is_startup_service = startup.Startup.is_startup_service
def __init__(self, session): """ Creates a MobilityManager instance. :param core.session.Session session: session this manager is tied to """ ConfigurableManager.__init__(self) self.session = session # configurations for basic range, indexed by WLAN node number, are # stored in self.configs # mapping from model names to their classes self._modelclsmap = { BasicRangeModel.name: BasicRangeModel, Ns2ScriptedMobility.name: Ns2ScriptedMobility } # dummy node objects for tracking position of nodes on other servers self.phys = {} self.physnets = {} self.session.broker.handlers.add(self.physnodehandlelink)
def __init__(self, session): """ Creates a CoreServices instance. :param core.session.Session session: session this manager is tied to :return: nothing """ ConfigurableManager.__init__(self) self.session = session # dict of default services tuples, key is node type self.defaultservices = {} # dict of tuple of service objects, key is node number self.customservices = {} paths = self.session.get_config_item('custom_services_dir') if paths: for path in paths.split(','): path = path.strip() self.importcustom(path) # TODO: remove need for cyclic import from core.services import startup self.is_startup_service = startup.Startup.is_startup_service
def __init__(self, session): ConfigurableManager.__init__(self, session) session.broker.handlers.add(self.handledistributed) self.reset()
def __init__(self, session): ConfigurableManager.__init__(self, session) session.broker.handlers += (self.handledistributed, ) self.reset()
def __init__(self, session): ConfigurableManager.__init__(self, session) self.reset() self.zonemap = {} for n, l in utm.ZONE_LETTERS: self.zonemap[l] = n
def __init__(self, session): ConfigurableManager.__init__(self, session) self.verbose = self.session.getcfgitembool('verbose', False) self.default_config = XenDefaultConfig(session, objid=None) self.loadconfigfile()