24 py::class_<DAPHNEFrame>(m,
"DAPHNEFrame", py::buffer_protocol())
26 .def(py::init([](py::capsule capsule) {
27 auto wfp = *
static_cast<DAPHNEFrame*
>(capsule.get_pointer());
30 .def(py::init([](py::bytes bytes) {
31 py::buffer_info info(py::buffer(bytes).request());
38 py::return_value_policy::reference_internal)
42 py::return_value_policy::reference_internal)
43 .def_property_readonly(
46 py::return_value_policy::reference_internal)
47 .def_property_readonly(
50 py::return_value_policy::reference_internal)
53 py::return_value_policy::reference_internal)
62 .def_property_readonly_static(
"s_bits_per_adc", [](py::object ) {
65 .def_property_readonly_static(
"s_bits_per_word", [](py::object ) {
69 .def_property_readonly_static(
"s_num_adc_words", [](py::object ) {
72 .def_property_readonly_static(
"s_expected_bytes", [](py::object ) {
75 .def_static(
"sizeof", []() {
return sizeof(
DAPHNEFrame); })
76 .def(
"get_bytes", [](
DAPHNEFrame* fr) -> py::bytes {
77 return py::bytes(
reinterpret_cast<char*
>(fr),
sizeof(
DAPHNEFrame));
80 py::class_<DAPHNEFrame::Header>(m,
"DAPHNEFrameHeader")
94 "trigger_sample_value",
105 .def_property_readonly_static(
"s_expected_bytes", [](py::object ) {
109 py::class_<DAPHNEFrame::PeakDescriptorData>(m,
"DAPHNEFramePeakDescriptorData")
110 .def_property_readonly_static(
"s_expected_bytes", [](py::object ) {
113 .def_property_readonly_static(
"max_peaks", [](py::object ) {
158 "samples_over_baseline_0",
183 "samples_over_baseline_1",
208 "samples_over_baseline_2",
233 "samples_over_baseline_3",
258 "samples_over_baseline_4",