Skip to content

Matching needs refactor #72

@eugene274

Description

@eugene274

Hi!

I revised AnalysisTree::Matching object and found few issues.

  1. Branch ids are redundant and should be AT LEAST transient fields (//!). All meta information about the matched branches are stored in the corresponding object inside the AnalysisTree::Configuration
  2. Storing direct and inverted maps is redundant. I propose to store more universal (and much less constrained) structure: std::list<std::pair<Integer, Integer>> and build direct and inverted maps on loading (inside Streamer) or if we fight for optimal performance on demand (when user calls GetMatch{Direct,Inverted}). With this strategy one can use even boost::bimap since we do not need to store it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions