1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#ifndef POLY_ELEMENT_SEQ_HPP
#define POLY_ELEMENT_SEQ_HPP

#include "UnstructuredElemSeq.hpp"

namespace moab
{

class PolyElementSeq : public UnstructuredElemSeq
{
  public:
    PolyElementSeq( EntityHandle shandle, EntityID entity_count, unsigned nodes_per_entity, SequenceData* dat )
        : UnstructuredElemSeq( shandle, entity_count, nodes_per_entity, dat )
    {
    }

    PolyElementSeq( EntityHandle shandle,
                    EntityID entity_count,
                    unsigned nodes_per_entity,
                    EntityID sequence_data_size )
        : UnstructuredElemSeq( shandle, entity_count, nodes_per_entity, sequence_data_size )
    {
    }

    virtual ~PolyElementSeq();

    virtual EntitySequence* split( EntityHandle here );<--- Function in derived class<--- Function in derived class

    virtual ErrorCode get_connectivity( EntityHandle handle,<--- Function in derived class<--- Function in derived class
                                        std::vector< EntityHandle >& connect,
                                        bool topological = false ) const;

    virtual ErrorCode get_connectivity( EntityHandle handle,<--- Function in derived class<--- Function in derived class
                                        EntityHandle const*& connect,
                                        int& connect_length,
                                        bool topological                     = false,
                                        std::vector< EntityHandle >* storage = 0 ) const;

  protected:
    PolyElementSeq( PolyElementSeq& split_from, EntityHandle here ) : UnstructuredElemSeq( split_from, here ) {}
};

}  // namespace moab

#endif