# Casual Block Class from math import * from BaseBlock import * class TestTwoLinearLoops: def __init__(self, initParams={}): self.__initParams = initParams self.__blocks = [] self.five = ConstantBlock("five", "Constant", 5.0) self.__blocks.append(self.five) self.six = ConstantBlock("six", "Constant", 6.0) self.__blocks.append(self.six) self.neg = BaseBlock("neg", "Negator") self.__blocks.append(self.neg) self.adder = BaseBlock("adder", "Adder") self.__blocks.append(self.adder) self.neg2 = BaseBlock("neg2", "Negator") self.__blocks.append(self.neg2) self.adder2 = BaseBlock("adder2", "Adder") self.__blocks.append(self.adder2) self.prod = BaseBlock("prod", "Product") self.__blocks.append(self.prod) self.seven = ConstantBlock("seven", "Constant", 7.0) self.__blocks.append(self.seven) self.adder3 = BaseBlock("adder3", "Adder") self.__blocks.append(self.adder3) self.neg3 = BaseBlock("neg3", "Negator") self.__blocks.append(self.neg3) self.nine = ConstantBlock("nine", "Constant", 9.0) self.__blocks.append(self.nine) self.adder4 = BaseBlock("adder4", "Adder") self.__blocks.append(self.adder4) self.inv = BaseBlock("inv", "Inverter") self.__blocks.append(self.inv) self.neg.linksIN.append((self.five, "s0", "")) self.adder.linksIN.append((self.six, "s1", "")) self.adder.linksIN.append((self.adder2, "s5", "")) self.neg2.linksIN.append((self.adder, "s2", "")) self.adder2.linksIN.append((self.neg2, "s4", "")) self.adder2.linksIN.append((self.neg, "s5", "")) self.prod.linksIN.append((self.adder2, "s6", "")) self.prod.linksIN.append((self.seven, "s7", "")) self.adder3.linksIN.append((self.prod, "s8", "")) self.adder3.linksIN.append((self.adder4, "s13", "")) self.neg3.linksIN.append((self.adder3, "s10", "")) self.adder4.linksIN.append((self.inv, "s11", "")) self.adder4.linksIN.append((self.neg3, "s12", "")) self.inv.linksIN.append((self.nine, "s10", "")) for block in self.__blocks: if isinstance(block, ConstantBlock): if (self.__initParams.has_key(block.getBlockName()) == 1): block.setInitValue(self.__initParams[block.getBlockName()]) def getBlocks(self): return self.__blocks