(root)/
binutils-2.41/
gprofng/
src/
ExpGroup.h
       1  /* Copyright (C) 2021-2023 Free Software Foundation, Inc.
       2     Contributed by Oracle.
       3  
       4     This file is part of GNU Binutils.
       5  
       6     This program is free software; you can redistribute it and/or modify
       7     it under the terms of the GNU General Public License as published by
       8     the Free Software Foundation; either version 3, or (at your option)
       9     any later version.
      10  
      11     This program is distributed in the hope that it will be useful,
      12     but WITHOUT ANY WARRANTY; without even the implied warranty of
      13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      14     GNU General Public License for more details.
      15  
      16     You should have received a copy of the GNU General Public License
      17     along with this program; if not, write to the Free Software
      18     Foundation, 51 Franklin Street - Fifth Floor, Boston,
      19     MA 02110-1301, USA.  */
      20  
      21  #ifndef _EXPGROUP_H
      22  #define _EXPGROUP_H
      23  
      24  #include "vec.h"
      25  #include "Map.h"
      26  
      27  class Experiment;
      28  class LoadObject;
      29  
      30  class ExpGroup
      31  {
      32  public:
      33    ExpGroup (char *nm);
      34    ~ExpGroup ();
      35    void append (Experiment *exp);
      36    void drop_experiment (Experiment *exp);
      37    Vector<Experiment*> *get_founders ();
      38    void create_list_of_loadObjects ();
      39    LoadObject *get_comparable_loadObject (LoadObject *lo);
      40  
      41    Vector<Experiment*> *exps;
      42    Vector<LoadObject*> *loadObjs;
      43    Map <LoadObject*, int> *loadObjsMap;
      44    Experiment *founder;
      45    char *name;
      46    int groupId;
      47    static int phaseCompareIdx;
      48  };
      49  
      50  #endif  /* _EXPGROUP_H */