Hi Sascha,

thanks for dealing with this.

Hope you don't mind that I try to answer this question on behalf of
Gergely, since I know the problem well and he is out of office currently.

The import function is not a feasible option because it should be possible
to open some data simply by File/Open. Gergely introduced new data types
and wrote the reader/writer classes for them. There is e.g. a "surgical
plan" data type that contains "tractographies". The aim is to be able to
open tractographies from the file system and they should be put under the
same node if they belong to the same plan. (And the plan should be created
if there isn't any yet.)

Another option would be to replace the File/Open menu item by a modifying
the workbench window advisor, but it's a kind of a hack.

As we discussed earlier among us, it might be a good idea to rename the
DataNodeFactory to DataNodeReader, since it's not really a factory but an
itk::ProcessObject. (Moreover, some local variables of this type are
already called dataNodeReaders in MITK itself what suggest the same.)

And there could be a DataNodeReaderFactory class that could provide a
customised data node reader for an application. In this way an application
could have a data node reader that has access to the data storage and can
put the newly created nodes to the required position in the data hierarchy.
(And could also create new nodes if necessary.)

This was our idea, basically, but of course we are happy to discuss this
and provide code if we agree in the design.

Cheers,
Miklos



On 19 July 2013 15:59, Sascha Zelzer <[email protected]> wrote:

> Hi Gergely,
>
> sorry for the delay. Maybe you could elaborate a little more on what
> your own DataNodeFactory is supposed to do?
>
> Please note that the parent/child relationships between datanodes are
> not encoded in the datanodes themselves, but in the datastorage in which
> they are put. So any kind of custom DataNodeFactory is unable to
> influence parent/child information.
>
> Mayby a custom import function for your data would just do? It would use
> the DataNodeFactory to create the datanodes and use your additional
> knowledge about the to be imported data to generate the appropriate
> parent/child hierarchy when putting the datanodes in a datastorage.
>
> Best,
> Sascha
>
> On 07/05/2013 03:54 PM, Gergely Zombori wrote:
> > Hi All,
> > In my application I am trying to import a set of data that has a
> > hierarchical structure. Let's say we have a "Container" node and many
> > "DataNode" under it.
> >
> > Currently when I read in my data the mitk::DataNodeFactory will put
> > all my data objects into individual data nodes that are at the same
> > level (topmost) of the data storage. As I checked in MITK it is hard
> > coded to use the mitk::DataNodeFactory in every occasion to import
> > data. However it would nicer if I could customize this DataNodeFactory
> > by overriding some of its methods.
> >
> > So the suggestion is to create a DataNodeFactory factory, that
> > instantiates a preferred application specific factory. This way the
> > application level I could register my own type of DataNodeFactory and
> > the system would use this whenever it is required to load data (and
> > stuff it to a datanode).
> >
> > Does this sound reasonable?
> >
> > Cheers,
> > Gergely
> >
> >
> ------------------------------------------------------------------------------
> > This SF.net email is sponsored by Windows:
> >
> > Build for Windows Store.
> >
> > http://p.sf.net/sfu/windows-dev2dev
> > _______________________________________________
> > mitk-users mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/mitk-users
>
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> mitk-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mitk-users
>
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users

Reply via email to