Main Page | Namespace List | Class Hierarchy | Compound List | File List | Namespace Members | Compound Members | File Members

Net.cxx

Go to the documentation of this file.
00001 /**************************************************************************
00002 ***    
00003 *** Copyright (c) 1995-2000 Regents of the University of California,
00004 ***               Andrew E. Caldwell, Andrew B. Kahng and Igor L. Markov
00005 *** Copyright (c) 2000-2004 Regents of the University of Michigan,
00006 ***               Saurabh N. Adya, Jarrod A. Roy and Igor L. Markov
00007 ***
00008 ***  Contact author(s): abk@cs.ucsd.edu, imarkov@umich.edu
00009 ***  Original Affiliation:   UCLA, Computer Science Department,
00010 ***                          Los Angeles, CA 90095-1596 USA
00011 ***
00012 ***  Permission is hereby granted, free of charge, to any person obtaining 
00013 ***  a copy of this software and associated documentation files (the
00014 ***  "Software"), to deal in the Software without restriction, including
00015 ***  without limitation 
00016 ***  the rights to use, copy, modify, merge, publish, distribute, sublicense, 
00017 ***  and/or sell copies of the Software, and to permit persons to whom the 
00018 ***  Software is furnished to do so, subject to the following conditions:
00019 ***
00020 ***  The above copyright notice and this permission notice shall be included
00021 ***  in all copies or substantial portions of the Software.
00022 ***
00023 *** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
00024 *** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
00025 *** OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
00026 *** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
00027 *** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT
00028 *** OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
00029 *** THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00030 ***
00031 ***
00032 ***************************************************************************/
00033 
00034 
00035 
00036 
00037 
00038 
00039 
00040 #include "FPcommon.h"
00041 #include "Net.h"
00042 using namespace parquetfp;
00043 
00044 void pin::changeOrient(ORIENT newOrient)
00045 {
00046   _orient = newOrient;
00047   if(newOrient == N)
00048     {
00049       _offset.x = _origOffset.x;
00050       _offset.y = _origOffset.y;
00051     }
00052   else if(newOrient == E)
00053     {
00054       _offset.x = _origOffset.y;
00055       _offset.y = -1*_origOffset.x;
00056     }
00057   else if(newOrient == S)
00058     {
00059       _offset.x = -1*_origOffset.x;
00060       _offset.y = -1*_origOffset.y;
00061     }
00062   else if(newOrient == W)
00063     {
00064       _offset.x = -1*_origOffset.y;
00065       _offset.y = _origOffset.x; 
00066     }
00067   else if(newOrient == FN)
00068     {
00069       _offset.x = -1*_origOffset.x;
00070       _offset.y = _origOffset.y;
00071     }
00072   else if(newOrient == FE)
00073     {
00074       _offset.x = _origOffset.y;
00075       _offset.y = _origOffset.x;
00076     }
00077   else if(newOrient == FS)
00078     {
00079       _offset.x = _origOffset.x;
00080       _offset.y = -1*_origOffset.y;
00081     }
00082   else if(newOrient == FW)
00083     {
00084       _offset.x = -1*_origOffset.y;
00085       _offset.y = -1*_origOffset.x;
00086     }
00087   else
00088     {
00089       cout<<"ERROR in changeOrient "<<endl;
00090     }
00091 }

Generated on Mon Apr 25 01:09:24 2005 for Parquete by doxygen 1.3.2