|
quantities/WiringPath.hGo to the documentation of this file.00001 //============================================================================ 00002 // Author : Alessandro Pinto <apinto@eecs.berkeley.edu> 00003 // University of California, Berkeley 00004 // 545 Cory Hall, Berkeley, CA 94720 00005 // Copyright : See COPYING file that comes with this distribution 00006 //============================================================================ 00007 00008 #ifndef WIRINGPATH_H_ 00009 #define WIRINGPATH_H_ 00010 00011 #include <iostream> 00012 #include <string> 00013 #include <list> 00014 #include "core/Quantity.h" 00015 #include "quantities/Position.h" 00016 00017 namespace cosi 00018 { 00019 00020 class WiringPath : public Quantity 00021 { 00022 std::list<Position> mPath ; 00023 public: 00024 00025 typedef std::list<Position>::iterator iterator ; 00026 00027 WiringPath(); 00028 00029 ~WiringPath(); 00030 00031 void AppendPosition(Position pP) ; 00032 00033 void PrependPosition(Position pP) ; 00034 00035 std::list<Position> GetValue(); 00036 00037 void SetValue(std::list<Position> pPath); 00038 00039 WiringPath Get( ) ; 00040 00041 void Set(WiringPath pPath) ; 00042 00043 double Length(); 00044 00045 iterator PathBegin() ; 00046 00047 iterator PathEnd(); 00048 00049 Position First(); 00050 Position Last(); 00051 00052 bool operator<(WiringPath pPath) ; 00053 bool operator>(WiringPath pPath) ; 00054 00055 WiringPath operator+(WiringPath pPath) ; 00056 WiringPath operator-(WiringPath pPath) ; 00057 00058 friend std::ostream& operator <<(std::ostream &pOs , const WiringPath &pP) ; 00059 00060 static std::string sQuantityName ; 00061 static std::string sQuantityType ; 00062 00063 }; 00064 00065 } 00066 00067 #endif /*WIRINGPATH_H_*/ Generated on Sun Sep 7 18:37:43 2008 for COSI by 1.5.4 |