QNANO
Fermion_Double_Index_Ref.h
1 #ifndef QNANO_NEW_FERMION_DOUBLE_INDEX_REF_DEFINED_H
2 #define QNANO_NEW_FERMION_DOUBLE_INDEX_REF_DEFINED_H
3 
4 #include "manybody/Fermion_Double_Index.h"
5 
6 /* Define reference to Fermion_Double_Index for the purpose of sorting
7  in Selected_Manybody_States */
8 
9 
11 public:
12  const Fermion_Double_Index *ptr;
13 
14  operator const Fermion_Double_Index *() const{return ptr;}
15 
17  ptr=p;
18  return *this;
19  }
21  operator=(p);
22  }
23 
24  //Compare operators for sorting and searching
25  bool operator==(const Fermion_Double_Index_Ref &other) const;
26  bool operator!=(const Fermion_Double_Index_Ref &other) const;
27  bool operator<(const Fermion_Double_Index_Ref &other) const;
28  bool operator>(const Fermion_Double_Index_Ref &other) const;
29 };
30 std::ostream &operator<<(std::ostream & os, const Fermion_Double_Index_Ref & fi);
31 
32 
33 #endif
Definition: Fermion_Double_Index.h:14
Definition: Fermion_Double_Index_Ref.h:10