MGCL V10  V10
MGCL V10
 全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 フレンド グループ ページ
HHisect_vector.h
1 /********************************************************************/
2 /* Copyright (c) 2015 DG Technologies Inc. and Yuzi Mizuno */
3 /* All rights reserved. */
4 /********************************************************************/
5 #ifndef _MGHHisect_vector_HH_
6 #define _MGHHisect_vector_HH_
7 
12 #include <vector>
13 #include "topo/HHisect.h"
14 
15 //Forward class declaration.
16 
18 
28 class MG_DLL_DECLR MGHHisect_vector{
29 
30 public:
31 
32 
33 typedef std::vector<MGHHisect>::iterator HHiterator;
34 typedef std::vector<MGHHisect>::const_iterator const_HHiterator;
35 
36 typedef std::vector<MGHHisect>::iterator iterator;
37 typedef std::vector<MGHHisect>::const_iterator const_iterator;
38 
40 MG_DLL_DECLR friend std::ostream & operator << (std::ostream&, const MGHHisect_vector& );
41 
43 
46 
48 MGHHisect_vector(MGHHisect& hhi):m_HHivector(1,hhi){;};
49 
52 
55 
57 
60 
61 const MGHHisect& operator[](int i)const{return m_HHivector[i];};
62 MGHHisect& operator[](int i){return m_HHivector[i];};
63 
65 
68 void push_back(MGHHisect& isect){m_HHivector.push_back(isect);};
69 void push_back(MGHHisect_vector& isects);
70 
73 const MGHHisect& back() const{return m_HHivector.back();};
74 MGHHisect& back() {return m_HHivector.back();};
75 
77 HHiterator begin(){return m_HHivector.begin();}
78 const_HHiterator begin() const{return m_HHivector.begin();}
79 
81 void clear(){m_HHivector.clear();}
82 
84 HHiterator end(){return m_HHivector.end();}
85 const_HHiterator end() const{return m_HHivector.end();}
86 
88 int size() const{return int(m_HHivector.size());};
89 
92 HHiterator erase(HHiterator i){return m_HHivector.erase(i);}
93 
96 const MGHHisect& front() const{return m_HHivector.front();};
97 MGHHisect& front(){return m_HHivector.front();};
98 
100 void insertAt(HHiterator i, MGHHisect& isect){
101  m_HHivector.insert(i, isect);
102 };
103 
105 bool empty() const{return m_HHivector.empty();};
106 
108 void pop_back(){m_HHivector.pop_back();}
109 
111 MGHHisect_vector& replace12();
112 
113 private:
114  std::vector<MGHHisect> m_HHivector;
115 
116 };
117  // end of IsectContainer group
119 #endif
HHiterator erase(HHiterator i)
Definition: HHisect_vector.h:92
int size() const
Return the number of items that are in the vector.
Definition: HHisect_vector.h:88
std::vector< MGHHisect >::const_iterator const_iterator
Definition: HHisect_vector.h:37
const_HHiterator begin() const
Definition: HHisect_vector.h:78
bool empty() const
Return true if there are no items in the vector, false(0) otherwise.
Definition: HHisect_vector.h:105
std::ostream & operator<<(std::ostream &ostrm, const MGisect &is)
Debug Function.
Definition: isect.h:95
HHiterator end()
Get the pointer of the next of the last element of the m_HHivector.
Definition: HHisect_vector.h:84
void push_back(MGHHisect &isect)
Definition: HHisect_vector.h:68
MGHHisect_vector(MGHHisect &hhi)
Constructor of 1 MGHHisect.
Definition: HHisect_vector.h:48
const MGHHisect & back() const
Definition: HHisect_vector.h:73
std::vector< MGHHisect >::iterator iterator
Definition: HHisect_vector.h:36
void pop_back()
Erase the last element of m_HHivector if not null.
Definition: HHisect_vector.h:108
HHiterator begin()
Get the pointer of the first element of the m_HHivector.
Definition: HHisect_vector.h:77
MGHHisect & operator[](int i)
Definition: HHisect_vector.h:62
void insertAt(HHiterator i, MGHHisect &isect)
Insert MGHHisect at the index position i.
Definition: HHisect_vector.h:100
MGHHisect_vector()
Void constructor.
Definition: HHisect_vector.h:45
const_HHiterator end() const
Definition: HHisect_vector.h:85
MGHHisect_vector defines a vector of MGHHisect.
Definition: HHisect_vector.h:28
const MGHHisect & front() const
Definition: HHisect_vector.h:96
std::vector< MGHHisect >::const_iterator const_HHiterator
Definition: HHisect_vector.h:34
std::vector< MGHHisect >::iterator HHiterator
Definition: HHisect_vector.h:33
MGHHisect is to represent one continuous intersection line of shells.
Definition: HHisect.h:43
MGHHisect & front()
Definition: HHisect_vector.h:97
const MGHHisect & operator[](int i) const
Definition: HHisect_vector.h:61
MGHHisect & back()
Definition: HHisect_vector.h:74
void clear()
Clear all the elements in m_HHivector.
Definition: HHisect_vector.h:81