lineinfo.h

Go to the documentation of this file.
00001 /* Gxsm - Gnome X Scanning Microscopy
00002  * universal STM/AFM/SARLS/SPALEED/... controlling and
00003  * data analysis software
00004  * 
00005  * Copyright (C) 1999,2000,2001,2002,2003 Percy Zahl
00006  *
00007  * Authors: Percy Zahl <zahl@users.sf.net>
00008  * additional features: Andreas Klust <klust@users.sf.net>
00009  * WWW Home: http://gxsm.sf.net
00010  *
00011  * This program is free software; you can redistribute it and/or modify
00012  * it under the terms of the GNU General Public License as published by
00013  * the Free Software Foundation; either version 2 of the License, or
00014  * (at your option) any later version.
00015  *
00016  * This program is distributed in the hope that it will be useful,
00017  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00019  * GNU General Public License for more details.
00020  *
00021  * You should have received a copy of the GNU General Public License
00022  * along with this program; if not, write to the Free Software
00023  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
00024  */
00025 
00026 /* -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 8 c-style: "K&R" -*- */
00027 
00028 #ifndef __LINEINFO_H
00029 #define __LINEINFO_H
00030 
00031 class LineInfo{
00032   friend class Mem2d;
00033 public:
00034   LineInfo(){ valid=FALSE; };
00035   ~LineInfo(){};
00036 
00037   inline void invalidate(){ valid=FALSE; };
00038   void set(double &aa, double &bb){ a=aa; b=bb; valid=TRUE; };
00039   inline double getY(int &x){ return a*(double)x+b; };
00040   inline double getB(){ return b; };
00041   int IsValid(){ return valid; };
00042 protected:
00043   int    valid;
00044 private:
00045   double a,b;
00046 };
00047 
00048 #endif

Generated on Sat Apr 1 09:03:59 2006 for GXSM by  doxygen 1.4.6