DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
afc.toolbox Namespace Reference

Classes

class  IntRange
 

Functions

 split (ctx, param, value)
 
 __str2int__ (value)
 
 split_ints (ctx, param, value)
 

Function Documentation

◆ __str2int__()

afc.toolbox.__str2int__ ( value)

Definition at line 68 of file toolbox.py.

68def __str2int__( value ):
69 if value.startswith('0x'):
70 base = 16
71 elif value.startswith('0o'):
72 bae = 8
73 elif value.startswith('0b'):
74 base = 2
75 else:
76 base = 10
77 return int(value, base)
78

◆ split()

afc.toolbox.split ( ctx,
param,
value )

Definition at line 60 of file toolbox.py.

60def split(ctx, param, value):
61 if value is None:
62 return []
63
64 return value.split(',')
65# ------------------------------------------------------------------------------
66
67# ------------------------------------------------------------------------------

◆ split_ints()

afc.toolbox.split_ints ( ctx,
param,
value )

Definition at line 79 of file toolbox.py.

79def split_ints(ctx, param, value):
80
81 sep = ','
82 dash = '-'
83
84 if value is None:
85 return []
86
87 numbers = []
88 for item in value.split(sep):
89 nums = item.split(dash)
90 if len(nums) == 1:
91 # single entry
92 numbers.append(__str2int__(item))
93 elif len(nums) == 2:
94 # range
95 i, j = __str2int__(nums[0]), __str2int__(nums[1])
96 if i > j:
97 click.ClickException('Invalid interval '+item)
98 numbers.extend(list(range(i,j+1)))
99 else:
100 click.ClickException('Malformed option (comma separated list expected): {}'.format(value))
101
102 return numbers
103# ------------------------------------------------------------------------------