AutoNoMouseBase
- class AutoNoMouseBase(task: TaskBase | None = None)[source]
Bases:
objectBase class for automated task execution without a real animal.
Can be subclassed in your project/code folder.
Methods
Attributes
- TASK_NAME: str = ''
- PARAMS: list[AutonomouseParam] = []
- start() None[source]
- stop() None[source]
- inject_positions() None[source]
Hacky: (I did not want to modify cam_box code to support this) Replaces cam_box position (x, y) lists with AutoNoMouse positions. Called when AutoNoMouse stops, just before cam_box.stop_recording(), so cam_box.save_csv() picks them up and records them.
- property running: bool
- property injecting: bool
- stop_inject() None[source]
- update_params(**kwargs) None[source]
Update param attributes on a running instance.
- run_trial() None[source]
Override in subclass. Sequence of actions to perform for one trial, e.g. pokes and position updates.
- inject_trial(*args, **kwargs) None[source]
Override in subclass. Append one mock trial row directly to session_df.
- inject_trials(n: int, interval: float = 1.0, **kwargs) None[source]
- poke(port: int, duration: float = 0.1) None[source]
Simulate a nose-poke in and out on port.
- set_position(x: float, y: float) None[source]
Update the virtual animal’s position and trace.
- wait(seconds: float) None[source]
Sleep for seconds, waking early if stop() is called.