Fork me on GitHub

Ignore:
Timestamp:
Nov 2, 2011, 5:39:26 PM (13 years ago)
Author:
cp3-support
Message:

upgrade HepMC to version 2.06.05

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Utilities/HepMC/interface/GenVertex.h

    r349 r572  
    2424#include "WeightContainer.h"
    2525#include "SimpleVector.h"
     26#include "IteratorRange.h"
    2627#include <iostream>
    2728#include <iterator>
     
    2930#include <set>
    3031#include <algorithm>
     32#include <cstddef>
    3133
    3234namespace HepMC {
    3335
    34     /// type of iteration
    35     enum IteratorRange { parents, children, family,
    36                          ancestors, descendants, relatives };
     36    class GenVertexParticleRange;
     37    class GenParticleProductionRange;
     38    class ConstGenParticleProductionRange;
     39    class GenParticleEndRange;
     40    class ConstGenParticleEndRange;
     41
    3742    class GenParticle;
    3843    class GenEvent;
     
    110115        ///
    111116        /// The barcode is the vertex's reference number, every vertex in the
    112         ///  event has a unique barcode. Vertex barcodes are negative numbers,
    113         ///  particle barcodes are positive numbers.
     117        /// event has a unique barcode. Vertex barcodes are negative numbers,
     118        /// particle barcodes are positive numbers.
     119        ///
     120        /// Please note that the barcodes are intended for internal use within
     121        /// HepMC as a unique identifier for the particles and vertices.
     122        /// Using the barcode to encode extra information is an abuse of
     123        /// the barcode data member and causes confusion among users.
     124        ///
    114125        int                     barcode() const; //!< unique identifier
    115126
     
    121132        /// const direct access to the weights container
    122133        const WeightContainer&  weights() const;
     134
     135        /// particle range
     136        GenVertexParticleRange particles( IteratorRange range = relatives );
     137        /// incoming particle range
     138        GenParticleProductionRange particles_in( GenParticle&, IteratorRange range = relatives );
     139        /// incoming particle range
     140        ConstGenParticleProductionRange particles_in( GenParticle const &, IteratorRange range = relatives ) const;
     141        /// outgoing particle range
     142        GenParticleEndRange particles_out( GenParticle&, IteratorRange range = relatives );
     143        /// outgoing particle range
     144        ConstGenParticleEndRange particles_out( GenParticle const &, IteratorRange range = relatives ) const;
    123145
    124146        ////////////////////
     
    197219            /// root vertex of this iteration
    198220            const GenVertex*  vertex_root() const;
     221        private:
     222            /// Pre-fix increment -- is not allowed
     223            edge_iterator& operator--(void);
     224            /// Post-fix increment -- is not allowed
     225            edge_iterator  operator--(int);
    199226        private:
    200227            const GenVertex*  m_vertex;
     
    275302                                              recursive_v_iter );
    276303        private:
     304            /// Pre-fix increment -- is not allowed
     305            vertex_iterator&    operator--(void);
     306            /// Post-fix increment -- is not allowed
     307            vertex_iterator     operator--(int);
     308
     309        private:
    277310            GenVertex*       m_vertex;   // the vertex associated to this iter
    278311            IteratorRange    m_range;
Note: See TracChangeset for help on using the changeset viewer.