00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #if !defined(GNEIGHBOR_HPP)
00012 #define GNEIGHBOR_HPP
00013
00014 #include "gtypes.h"
00015 #include <iostream.h>
00016 #include <stdlib.h>
00017 #include "vdbdata.hpp"
00018
00019
00020 class GNeighbor
00021 {
00022 public:
00023
00024 GNeighbor();
00025 ~GNeighbor();
00026
00027 inline GSHORT &proc () { return proc_id_; }
00028 inline GKEY &elemkey () { return elem_key_; }
00029 inline GKEY &elemrootkey () { return elem_root_key_; }
00030 inline GINT &elemid () { return elem_id_; }
00031 inline GINT &compid () { return comp_id_; }
00032 inline GINT &ancillary () { return iancillary_; }
00033 inline void operator=(VDBData &p)
00034 { proc_id_ = p.proc(); elem_id_ = p.hostid(); comp_id_ = p.localid();
00035 elem_key_ = p.hostkey(); elem_root_key_ = p.hostrootkey(); }
00036
00037 friend ostream &operator<<(ostream &str, GNeighbor &a);
00038
00039 private:
00040
00041
00042 GSHORT proc_id_;
00043 GINT iancillary_;
00044 GINT comp_id_;
00045 GINT elem_id_;
00046 GKEY elem_key_;
00047 GKEY elem_root_key_;
00048
00049 };
00050
00051 #endif