Source code for blissoda.id24.exafs_processor
from typing import Any
from typing import Dict
from typing import Optional
from ..exafs import scan_utils
from ..exafs.processor import ExafsProcessor
[docs]
class Id24ExafsProcessor(ExafsProcessor):
def __init__(
self,
config: Optional[Dict[str, Any]] = None,
defaults: Optional[Dict[str, Any]] = None,
**deprecated_defaults: Dict[str, Any],
) -> None:
defaults = self._merge_defaults(deprecated_defaults, defaults)
defaults.setdefault("workflow", "/users/opid24/ewoks/online.ows")
defaults.setdefault("_scan_type", "escan")
counters = defaults.setdefault("_counters", dict())
counters.setdefault(
"escan",
{
"mu_name": "mu_trans",
"energy_name": "energy_enc",
"energy_unit": "keV",
},
)
super().__init__(config=config, defaults=defaults)
def _scan_type_from_scan(self, scan: scan_utils.ScanType) -> Optional[str]:
return "escan"
def _multi_xas_scan(self, scan: scan_utils.ScanType) -> bool:
return True
# return scan_utils.is_multi_xas_scan(scan)
def _multi_xas_subscan_size(self, scan: scan_utils.ScanType) -> int:
return scan_utils.multi_xas_subscan_size(scan)