def METHOD_NAME(tmp_path):
    from ctapipe.core import run_tool
    from ctapipe.io import TableLoader
    from ctapipe.tools.process import ProcessorTool
    path = "dataset://gamma_divergent_LaPalma_baseline_20Zd_180Az_prod3_test.simtel.gz"
    config = dict(
        ProcessorTool=dict(
            EventSource=dict(
                focal_length_choice="EQUIVALENT",
                # remove 3 LSTs, so that we trigger the 1-LST condition
                allowed_tels=(1, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19),
            ),
            SoftwareTrigger=dict(
                min_telescopes=2,
                min_telescopes_of_type=[
                    ("type", "*", 0),
                    ("type", "LST*", 2),
                ],
            ),
        )
    )
    output_path = tmp_path / "software_trigger.dl1.h5"
    config_path = tmp_path / "config.json"
    config_path.write_text(json.dumps(config))
    run_tool(
        ProcessorTool(),
        [f"--input={path}", f"--output={output_path}", f"--config={config_path}"],
    )
    del config["ProcessorTool"]["SoftwareTrigger"]
    output_path_no_software_trigger = tmp_path / "no_software_trigger.dl1.h5"
    config_path = tmp_path / "config_no_software_trigger.json"
    config_path.write_text(json.dumps(config))
    run_tool(
        ProcessorTool(),
        [
            f"--input={path}",
            f"--output={output_path_no_software_trigger}",
            f"--config={config_path}",
        ],
    )
    with TableLoader(
        output_path,
        load_simulated=True,
        load_dl1_parameters=True,
        focal_length_choice="EQUIVALENT",
    ) as loader:
        events_trigger = loader.read_telescope_events("LST_LST_LSTCam")
    with TableLoader(
        output_path_no_software_trigger,
        load_simulated=True,
        load_dl1_parameters=True,
        focal_length_choice="EQUIVALENT",
    ) as loader:
        events_no_trigger = loader.read_telescope_events("LST_LST_LSTCam")
    assert len(events_no_trigger) > len(events_trigger)