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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions