dragonfly.implementations.psyllid_provider module

Some template vars

Members: PsyllidProvider Functions: Classes:

Summary

class dragonfly.implementations.psyllid_provider.PsyllidProvider(set_condition_list=[], channel_dict={'a': 'ch0', 'b': 'ch1', 'c': 'ch2'}, queue_dict={'a': 'channel_a_psyllid', 'b': 'channel_b_psyllid', 'c': 'channel_c_psyllid'}, temp_file='/tmp/empty_egg_file.egg', **kwargs)

Bases: dripline.core.provider.Provider

Provider for direct communication with up to 3 Psyllid instances with a single stream each

activate(channel)

Tells psyllid to activate and checks whether activation was successful

active_channels

Returns the number of psyllid instances that are activated

all_acquisition_modes

Returns mode_dict containing the information which psyllid instance is in triggering or streaming mode Stopped psyllid instances are in acquisition mode None Content of mode_dict is not updated at this point Content of mode_dict is updated by calling prepare_daq_system (in roach_daq_run_interface) or check_all_psyllid_instances

all_central_frequencies

Returns a dictionary with all central frequencies

check_all_psyllid_instances()

Populates all dictionaries by checking the configuarions of all psyllid instances

deactivate(channel)

Tells psyllid to deactivate and checks whether deactivation was successful

get_acquisition_mode(channel)

Tests whether psyllid is in streaming or triggering mode

get_active_config(channel, key)
get_central_frequency(channel)

Gets central frequency from psyllid and returns it

get_fmt_sigma_high_threshold(channel='a')
get_fmt_sigma_threshold(channel='a')
get_fmt_snr_high_threshold(channel='a')
get_fmt_snr_threshold(channel='a')
get_n_triggers(channel='a')
get_pretrigger_time(channel='a')
get_skip_tolerance(channel='a')
get_threshold_type(channel='a')

Returns string: ‘snr’ or ‘sigma’

get_time_window(channel='a')

Gets and returns all time window settings

get_trigger_configuration(channel='a')

Gets and returns all trigger parameters

get_trigger_mode(channel='a')
is_psyllid_using_monarch(channel)

Check psyllid is using monarch If it isn’t psyllid cannot write files and runs will fail

make_trigger_mask(channel='a', filename='~/fmt_mask.json')

Tells psyllid to record a frequency mask, write it to a json file and prepare for triggering run

quit_psyllid(channel)

Tells psyllid to quit

reactivate(channel)

Tells psyllid to reactivate and checks whether reactivation was successful

request_status(channel)

Asks the psyllid instance what state it is in and returns that state

save_reactivate(channel)

Reactivate results in the loss of all active-node configurations This method stores settings and re-sets them after reactivation

set_central_frequency(channel, cf)

Sets central frequency in psyllid

set_fmt_sigma_high_threshold(threshold, channel='a')
set_fmt_sigma_threshold(threshold, channel='a')
set_fmt_snr_high_threshold(threshold, channel='a')
set_fmt_snr_threshold(threshold, channel='a')
set_n_triggers(n_triggers, channel='a')
set_pretrigger_time(pretrigger_time, channel='a')
set_skip_tolerance(skip_tolerance, channel='a')
set_threshold_type(snr_or_sigma, channel='a')
set_time_window(channel='a', pretrigger_time=0.002, skip_tolerance=0.005)

Does all time window settings at once

set_trigger_configuration(channel='a', threshold=18, threshold_high=0, n_triggers=1)

Set all trigger parameters at once

set_trigger_mode(channel='a')
start_run(channel, duration, filename)

Tells psyllid to start a run Payload is run duration and egg-filename

stop_run(channel)

Tells psyllid to stop a run This method is for interrupting runs Runs stop automatically after the set duration and normally don’t need to be stopped manually

End of modules condition

Data:

End of data condition