00001 // LinkContactInfo.h: interface for the LinkContactInfo class. 00002 // 00004 00005 #ifndef LINKCONTACTINFO_H 00006 #define LINKCONTACTINFO_H 00007 00008 #include "Vector3.h" 00009 #include <vector> 00010 00011 00012 class LinkContactInfo { 00013 public: 00014 LinkContactInfo() {} 00015 00016 LinkContactInfo(const int& alpha, const Vector3& v) { 00017 this->alpha=alpha; 00018 this->v=v; 00019 } 00020 00021 virtual ~LinkContactInfo(){} 00022 00023 Vector3 v; 00024 real thetaFactor; 00025 int alpha; 00026 00027 bool operator<( const LinkContactInfo& other) const { return this->alpha < other.alpha; } 00028 00039 }; 00040 00041 00042 /* 00043 00044 //These structs can be used by STL sort to sort LinkContactInfoLists 00045 00046 struct std::less<LinkContactInfo*> { 00047 bool operator()(LinkContactInfo const* p1, LinkContactInfo const* p2){ 00048 if(!p1) 00049 return true; 00050 if(!p2) 00051 return false; 00052 return p1->alpha < p2->alpha; 00053 } 00054 }; 00055 00056 struct std::greater<LinkContactInfo*> { 00057 bool operator()(LinkContactInfo const* p1, LinkContactInfo const* p2) { 00058 if(!p1) 00059 return false; 00060 if(!p2) 00061 return true; 00062 return p1->alpha > p2->alpha; 00063 } 00064 }; 00065 */ 00066 00067 00068 typedef std::vector<LinkContactInfo*> LinkContactInfoPVector; 00069 typedef std::vector<LinkContactInfo> LinkContactInfoVector; 00070 00071 00072 #endif //LINKCONTACTINFO_H
Thyrix homepage Users' guide
(C) Arxia 2004-2005