X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/37834a1d83f2586c5b4a5a49afd0146c73713037..07d7a4b23312577ccfe7b196169160594ba63601:/lib/python/Components/NimManager.py diff --git a/lib/python/Components/NimManager.py b/lib/python/Components/NimManager.py index 25dd0701..824f9f71 100644 --- a/lib/python/Components/NimManager.py +++ b/lib/python/Components/NimManager.py @@ -2,7 +2,6 @@ from config import config #global config instance from config import configElement from config import ConfigSubsection -from config import ConfigSlider from config import configSelection from config import currentConfigSelectionElement from config import getConfigSelectionElement @@ -227,7 +226,9 @@ class SecConfigure: sec.setCommittedCommand(diseqcParam.BA) elif currentConfigSelectionElement(currLnb.commitedDiseqcCommand) == "BB": sec.setCommittedCommand(diseqcParam.BB) - + else: + sec.setCommittedCommand(long(currentConfigSelectionElement(currLnb.commitedDiseqcCommand))) + if currentConfigSelectionElement(currLnb.fastDiseqc) == "yes": sec.setFastDiSEqC(True) else: @@ -379,7 +380,6 @@ class NimManager: pass else: self.transponders[self.parsedCab] = [ ] - self.transponders[self.parsedCab].append((1, freq, sr, mod, fec)) class parseTerrestrials(ContentHandler): @@ -391,7 +391,7 @@ class NimManager: def startElement(self, name, attrs): if (name == "terrestrial"): #print "found sat " + attrs.get('name',"") + " " + str(attrs.get('position',"")) - tname = attrs.get('name',"") + tname = attrs.get('name',"").encode("UTF-8") tflags = attrs.get('flags',"") self.terrestrialsList.append((tname, tflags)) self.parsedTer = str(tname) @@ -414,7 +414,25 @@ class NimManager: self.transponders[self.parsedTer].append((2, freq, bw, const, crh, crl, guard, transm, hierarchy, inv)) def getTransponders(self, pos): - return self.transponders[pos] + if self.transponders.has_key(pos): + return self.transponders[pos] + else: + return [] + + def getTranspondersCable(self, cable): + return self.transponderscable[cable] + + def getTranspondersTerrestrial(self, region): + return self.transpondersterrestrial[region] + + def getCableDescription(self, nim): + return self.cablesList[config.Nims[nim].cable.value] + + def getTerrestrialDescription(self, nim): + return self.terrestrialsList[config.Nims[nim].terrestrial.value][0] + + def getTerrestrialFlags(self, nim): + return self.terrestrialsList[config.Nims[nim].terrestrial.value][1] def getConfiguredSats(self): return self.sec.getSatList() @@ -468,6 +486,7 @@ class NimManager: self.nimSocketCount += 1 elif line.strip().startswith("Type:"): self.nimTypes[lastsocket] = str(line.strip()[6:]) + #self.nimTypes[lastsocket] = str("DVB-T") elif line.strip().startswith("Name:"): self.nimNames[lastsocket] = str(line.strip()[6:]) elif line.strip().startswith("empty"): @@ -478,10 +497,16 @@ class NimManager: def getNimType(self, slotID): if slotID >= self.nimCount: - return "empty/unknown" + return self.nimType["empty/unknown"] else: return self.nimType[self.nimTypes[slotID]] + def getNimTypeName(self, slotID): + if slotID >= self.nimCount: + return "empty/unknown" + else: + return self.nimTypes[slotID] + def getNimName(self, slotID): return self.nimNames[slotID] @@ -542,7 +567,13 @@ class NimManager: nimText += ("DVB-S", "DVB-C", "DVB-T")[slot.nimType] + ")" list.append((nimText, slot)) return list + + def getNimConfigMode(self, slotid): + return currentConfigSelectionElement(config.Nims[slotid].configMode) + def getSatList(self): + return self.satList + def getSatListForNim(self, slotid): list = [] if (self.getNimType(slotid) == self.nimType["DVB-S"]): @@ -568,6 +599,28 @@ class NimManager: list.append(x) return list + def getRotorSatListForNim(self, slotid): + list = [] + if (self.getNimType(slotid) == self.nimType["DVB-S"]): + #print "slotid:", slotid + + #print "self.satellites:", self.satList[config.Nims[slotid].diseqcA.value] + #print "diseqcA:", config.Nims[slotid].diseqcA.value + configMode = currentConfigSelectionElement(config.Nims[slotid].configMode) + if configMode == "simple": + if (config.Nims[slotid].diseqcMode.value == 4): + for x in self.satList: + list.append(x) + elif configMode == "advanced": + for x in self.satList: + nim = config.Nims[slotid] + lnbnum = nim.advanced.sat[x[1]].lnb.value + if lnbnum != 0: + lnb = nim.advanced.lnb[lnbnum] + if lnb.diseqcMode.value == 3: # diseqc 1.2 + list.append(x) + return list + def nimDiseqcModeChanged(self, slotid, mode): #print "nimDiseqcModeChanged set to " + str(mode) pass @@ -618,7 +671,7 @@ def InitNimManager(nimmgr): ("equal", _("Equal to Socket A")), ("loopthrough", _("Loopthrough to Socket A")), ("nothing", _("Nothing connected")), - ("satposdepends", _("Secondary cable from Rotor-LNB")), + ("satposdepends", _("Secondary cable from motorized LNB")), ("simple", _("Simple")), ("advanced", _("Advanced"))), False) #important - check if just the 2nd one is LT only and the first one is DVB-S @@ -674,7 +727,15 @@ def InitNimManager(nimmgr): nim.advanced.sat[x[1]].usals = configElement(cname + "advanced.sat" + str(x[1]) + ".usals", configSelection, 0, (("yes", _("Yes")), ("no", _("No"))), False) nim.advanced.sat[x[1]].rotorposition = configElement(cname + "advanced.sat" + str(x[1]) + ".rotorposition", configSequence, [1], configsequencearg.get("INTEGER", (1, 255)), False) nim.advanced.sat[x[1]].lnb = configElement(cname + "advanced.sat" + str(x[1]) + ".lnb", configSelection, 0, lnbs, False) - + + csw = [("none", _("None")), ("AA", _("AA")), ("AB", _("AB")), ("BA", _("BA")), ("BB", _("BB"))] + for y in range(0, 16): + csw.append((str(0xF0|y), "Input " + str(y+1))) + + ucsw = [("none", _("None"))] + for y in range(1, 17): + ucsw.append("Input " + str(y)) + nim.advanced.lnb = [0] for x in range(1, 33): nim.advanced.lnb.append(ConfigSubsection()) @@ -686,15 +747,12 @@ def InitNimManager(nimmgr): nim.advanced.lnb[x].increased_voltage = configElement(cname + "advanced.lnb" + str(x) + ".increased_voltage", configSelection, 0, (("no", _("No")), ("yes", _("Yes"))), False) nim.advanced.lnb[x].toneburst = configElement(cname + "advanced.lnb" + str(x) + ".toneburst", configSelection, 0, (("none", _("None")), ("A", _("A")), ("B", _("B"))), False) nim.advanced.lnb[x].diseqcMode = configElement(cname + "advanced.lnb" + str(x) + ".diseqcMode", configSelection, 0, (("none", _("None")), ("1_0", _("1.0")), ("1_1", _("1.1")), ("1_2", _("1.2"))), False) - nim.advanced.lnb[x].commitedDiseqcCommand = configElement(cname + "advanced.lnb" + str(x) + ".commitedDiseqcCommand", configSelection, 0, (("none", _("None")), ("AA", _("AA")), ("AB", _("AB")), ("BA", _("BA")), ("BB", _("BB"))), False) + nim.advanced.lnb[x].commitedDiseqcCommand = configElement(cname + "advanced.lnb" + str(x) + ".commitedDiseqcCommand", configSelection, 0, csw, False) nim.advanced.lnb[x].fastDiseqc = configElement(cname + "advanced.lnb" + str(x) + ".fastDiseqc", configSelection, 0, (("no", _("No")), ("yes", _("Yes"))), False) nim.advanced.lnb[x].sequenceRepeat = configElement(cname + "advanced.lnb" + str(x) + ".sequenceRepeat", configSelection, 0, (("no", _("No")), ("yes", _("Yes"))), False) nim.advanced.lnb[x].commandOrder1_0 = configElement(cname + "advanced.lnb" + str(x) + ".commandOrder1_0", configSelection, 0, ("committed, toneburst", "toneburst, committed"), False) nim.advanced.lnb[x].commandOrder = configElement(cname + "advanced.lnb" + str(x) + ".commandOrder", configSelection, 0, ("committed, toneburst", "toneburst, committed", "committed, uncommitted, toneburst", "toneburst, committed, uncommitted", "uncommitted, committed, toneburst", "toneburst, uncommitted, commmitted"), False) - disCmd = ["none"] - for y in range(1, 17): - disCmd.append("Input " + str(y)) - nim.advanced.lnb[x].uncommittedDiseqcCommand = configElement(cname + "advanced.lnb" + str(x) + ".uncommittedDiseqcCommand", configSelection, 0, disCmd, False) + nim.advanced.lnb[x].uncommittedDiseqcCommand = configElement(cname + "advanced.lnb" + str(x) + ".uncommittedDiseqcCommand", configSelection, 0, ucsw, False) nim.advanced.lnb[x].diseqcRepeats = configElement(cname + "advanced.lnb" + str(x) + ".diseqcRepeats", configSelection, 0, (("none", _("None")), ("one", _("One")), ("two", _("Two")), ("three", _("Three"))), False) nim.advanced.lnb[x].longitude = configElement(cname + "advanced.lnb" + str(x) + ".longitude", configSequence, [5,100], configsequencearg.get("FLOAT", [(0,90),(0,999)]), False) nim.advanced.lnb[x].longitudeOrientation = configElement(cname + "advanced.lnb" + str(x) + ".longitudeOrientation", configSelection, 0, (("east", _("East")), ("west", _("West"))), False) @@ -705,7 +763,10 @@ def InitNimManager(nimmgr): elif slot.nimType == nimmgr.nimType["DVB-C"]: nim.cable = configElement(cname + "cable", configSelection, 0, nimmgr.cablesList, False); elif slot.nimType == nimmgr.nimType["DVB-T"]: - nim.cable = configElement(cname + "terrestrial", configSelection, 0, nimmgr.terrestrialsList, False); + list = [] + for x in nimmgr.terrestrialsList: + list.append(x[0]) + nim.terrestrial = configElement(cname + "terrestrial", configSelection, 0, list, False); else: print "pls add support for this frontend type!"