Branch data Line data Source code
1 : : #include "EntitySequence.hpp"
2 : : #include "SequenceData.hpp"
3 : :
4 : : namespace moab
5 : : {
6 : :
7 : 2620864 : bool EntitySequence::using_entire_data() const
8 : : {
9 [ + + ][ + + ]: 2620864 : return start_handle() == data()->start_handle() && end_handle() == data()->end_handle();
10 : : }
11 : :
12 : 2146164 : int EntitySequence::values_per_entity() const
13 : : {
14 : 2146164 : return 0;
15 : : }
16 : :
17 : 3935 : ErrorCode EntitySequence::pop_back( EntityID count )
18 : : {
19 : 3935 : EntityHandle new_end = endHandle - count;
20 [ - + ]: 3935 : if( new_end < startHandle ) return MB_FAILURE;
21 : :
22 : 3935 : endHandle = new_end;
23 : 3935 : return MB_SUCCESS;
24 : : }
25 : :
26 : 31607 : ErrorCode EntitySequence::pop_front( EntityID count )
27 : : {
28 : 31607 : EntityHandle new_start = startHandle + count;
29 [ - + ]: 31607 : if( new_start > endHandle ) return MB_FAILURE;
30 : :
31 : 31607 : startHandle = new_start;
32 : 31607 : return MB_SUCCESS;
33 : : }
34 : :
35 : 34 : ErrorCode EntitySequence::prepend_entities( EntityID count )
36 : : {
37 : 34 : EntityHandle new_start = startHandle - count;
38 [ - + ]: 34 : if( new_start < data()->start_handle() ) return MB_FAILURE;
39 : :
40 : 34 : startHandle = new_start;
41 : 34 : return MB_SUCCESS;
42 : : }
43 : :
44 : 2562729 : ErrorCode EntitySequence::append_entities( EntityID count )
45 : : {
46 : 2562729 : EntityHandle new_end = endHandle + count;
47 [ - + ]: 2562729 : if( new_end > data()->end_handle() ) return MB_FAILURE;
48 : :
49 : 2562729 : endHandle = new_end;
50 : 2562729 : return MB_SUCCESS;
51 : : }
52 : :
53 : 11340 : ErrorCode EntitySequence::merge( EntitySequence& other )
54 : : {
55 [ - + ]: 11340 : if( sequenceData != other.sequenceData ) return MB_FAILURE;
56 [ + + ]: 11340 : if( end_handle() + 1 == other.start_handle() )
57 : : {
58 : 11230 : endHandle = other.end_handle();
59 : 11230 : other.startHandle = other.end_handle() + 1;
60 : : }
61 [ + - ]: 110 : else if( start_handle() == other.end_handle() + 1 )
62 : : {
63 : 110 : startHandle = other.start_handle();
64 : 110 : other.endHandle = other.start_handle() - 1;
65 : : }
66 : : else
67 : 0 : return MB_FAILURE;
68 : 11340 : return MB_SUCCESS;
69 : : }
70 : :
71 : 10 : unsigned long EntitySequence::get_per_entity_memory_use( EntityHandle, EntityHandle ) const
72 : : {
73 : 10 : return 0;
74 : : }
75 : :
76 : : } // namespace moab
|