bmgen.targets.basytec package#

Subpackages#

Submodules#

bmgen.targets.basytec.ast module#

class bmgen.targets.basytec.ast.BasytecAction#

Bases: object

toText()#
class bmgen.targets.basytec.ast.BasytecCalculation(variable: bmgen.targets.basytec.ast.BasytecVariable, calculation: str)#

Bases: BasytecParameter

calculation: str#
toText()#
variable: BasytecVariable#
class bmgen.targets.basytec.ast.BasytecChannel(name: str, unit: bmgen.targets.basytec.ast.BasytecUnit)#

Bases: object

name: str#
unit: BasytecUnit#
class bmgen.targets.basytec.ast.BasytecGoto(target: str)#

Bases: BasytecAction

target: str#
toText()#
class bmgen.targets.basytec.ast.BasytecLimit(channel: bmgen.targets.basytec.ast.BasytecChannel, operator: str, value: bmgen.targets.basytec.ast.BasytecValueLiteral, action: bmgen.targets.basytec.ast.BasytecAction | None = None)#

Bases: object

action: BasytecAction | None = None#
channel: BasytecChannel#
operator: str#
toText()#
value: BasytecValueLiteral#
class bmgen.targets.basytec.ast.BasytecNext#

Bases: BasytecAction

toText()#
class bmgen.targets.basytec.ast.BasytecParameter#

Bases: ABC

class bmgen.targets.basytec.ast.BasytecProgram(lines: List[bmgen.targets.basytec.ast.BasytecStatement] = <factory>, limits: List[bmgen.targets.basytec.ast.BasytecLimit] = <factory>, registration_format: List[str] = <factory>)#

Bases: object

limits: List[BasytecLimit]#
lines: List[BasytecStatement]#
registration_format: List[str]#
toTable()#
toText()#
class bmgen.targets.basytec.ast.BasytecSetValue(channel: bmgen.targets.basytec.ast.BasytecChannel, value: bmgen.targets.basytec.ast.BasytecValueLiteral)#

Bases: BasytecParameter

channel: BasytecChannel#
toText()#
value: BasytecValueLiteral#
class bmgen.targets.basytec.ast.BasytecStatement(operator: bmgen.targets.basytec.constants.StepType, parameters: List[bmgen.targets.basytec.ast.BasytecParameter] = <factory>, limits: List[bmgen.targets.basytec.ast.BasytecLimit] = <factory>, registrations: List[bmgen.targets.basytec.ast.BasytecSetValue] = <factory>, label: str | None = None)#

Bases: object

label: str | None = None#
limits: List[BasytecLimit]#
operator: StepType#
parameters: List[BasytecParameter]#
registrations: List[BasytecSetValue]#
toTable(linenumber)#
toText(linenumber: int)#
class bmgen.targets.basytec.ast.BasytecUnit(name: str)#

Bases: object

name: str#
class bmgen.targets.basytec.ast.BasytecValue#

Bases: ABC

class bmgen.targets.basytec.ast.BasytecValueLiteral(value: float, unit: bmgen.targets.basytec.ast.BasytecUnit)#

Bases: BasytecValue

toText()#
unit: BasytecUnit#
value: float#
class bmgen.targets.basytec.ast.BasytecVariable(name: str)#

Bases: BasytecValue

name: str#
toText()#

bmgen.targets.basytec.battery module#

bmgen.targets.basytec.channel module#

bmgen.targets.basytec.channel.channel(name: str) BasytecChannel#

bmgen.targets.basytec.constants module#

class bmgen.targets.basytec.constants.StepType(*values)#

Bases: Enum

CalcOnce = 12#
Calculate = 11#
Charge = 1#
Const = 13#
Cycle_end = 9#
Cycle_start = 8#
Define = 19#
Discharge = 2#
EIS = 14#
Extern = 18#
Message = 20#
Pause = 3#
Ramp_I = 4#
Ramp_U = 5#
Result = 15#
Set = 6#
Set_Temp = 7#
Start = 16#
Stop = 17#
Table = 10#

bmgen.targets.basytec.function module#

bmgen.targets.basytec.function.charge(current: BasytecValueLiteral, voltage: BasytecValueLiteral | None = None, limits: List[BasytecLimit] | None = None, registrations: List[BasytecSetValue] | None = None)#
bmgen.targets.basytec.function.discharge(current: BasytecValueLiteral, voltage: BasytecValueLiteral | None = None, limits: List[BasytecLimit] | None = None, registrations: List[BasytecSetValue] | None = None)#
bmgen.targets.basytec.function.error(errnum: int)#
bmgen.targets.basytec.function.hours(value: float) time#
bmgen.targets.basytec.function.limit(condition: BasytecLimit, action: BasytecAction | None = None)#
bmgen.targets.basytec.function.limit_global(condition: BasytecLimit, action: BasytecAction | None = None)#
bmgen.targets.basytec.function.minutes(value: float) time#
bmgen.targets.basytec.function.pause(limits: List[BasytecLimit] | None = None, hours: float | None = None, minutes: float | None = None, seconds: float | None = None, registrations: List[BasytecSetValue] | None = None)#
bmgen.targets.basytec.function.register(time: time | None = None, voltage: BasytecValueLiteral | None = None, current: BasytecValueLiteral | None = None, format: List | None = None)#
bmgen.targets.basytec.function.register_global(time: time | None = None, voltage: BasytecValueLiteral | None = None, current: BasytecValueLiteral | None = None, format: List | None = None)#
bmgen.targets.basytec.function.seconds(value: float) time#
class bmgen.targets.basytec.function.time(hours: float | None = None, minutes: float | None = None, seconds: float | None = None)#

Bases: object

hours: float | None = None#
minutes: float | None = None#
seconds: float | None = None#
toLimit() BasytecLimit#
toValue() BasytecValueLiteral#

bmgen.targets.basytec.program module#

bmgen.targets.basytec.program.variable(name: str, value: float | None = None)#

bmgen.targets.basytec.stepinfo module#

class bmgen.targets.basytec.stepinfo.BasytecStepInfo(step: bmgen.targets.basytec.ast.BasytecStatement, varname: str, chargeVar: bmgen.targets.basytec.ast.BasytecVariable | None = None)#

Bases: object

property charge#
chargeVar: BasytecVariable | None = None#
step: BasytecStatement#
varname: str#

Module contents#

bmgen.targets.basytec.generator: BasytecGenerator#