Project

General

Profile

Bug #1678

Outputters take data as argument

Added by Rogers, Chris about 8 years ago. Updated about 8 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Data Structure
Target version:
Start date:
07 May 2015
Due date:
% Done:

100%

Estimated time:
Workflow:
New Issue

Description

OutputCppRoot should take data as argument, not json... subissue of #1312


Related issues

Related to MAUS - Feature #1312: Online reconstruction requires new APIOpenRogers, Chris15 July 2013

Actions
#1

Updated by Rogers, Chris about 8 years ago

Added type conversions for header and footer types to json, python, string to src/common_cpp/Converters

#2

Updated by Rogers, Chris about 8 years ago

Type conversion now available right the way up to the python layer.

Note that the type conversion goes like (just for my sanity, why is it like that?):

src/common_cpp/Converter -> Can be called inside modules, does not require python
src/common_cpp/Utils/PyObjectWrap -> Wraps everything in python, called from PyWrapModule
src/py_cpp/PyConverter -> Called from python API

each layer does slightly different stuff for different use cases...

#3

Updated by Rogers, Chris about 8 years ago

This is done in lp:~chris-rogers/maus/1678 and tests pass locally...

#4

Updated by Rogers, Chris about 8 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

Committed to trunk in r839.

Note that I made the API a bit less transparent (and a bit less arcane?) in OutputBase - now user has to define bool _save(PyObject* py_obj); in all the other modules, user can do void _process(TEMPLATE* t) or wahtever. That wasn't possible here because py_obj can take many types, e.g. JobHeader, RunHeader, Spill, etc. Sorry about that.

Also available in: Atom PDF