VR-Forces 4.0.4 Class Documentation
include/vrfutil/tableFn1D.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2000 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: tableFn1D.h,v $ $Revision: 1.12 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef Dt1DTableFn_H_
00013 #define Dt1DTableFn_H_
00014 
00015 #include <stdio.h>
00016 #include <vlutil/vlMachineTypes.h>
00017 #include "vrfutil/baseTableFn.h"
00018 #include "vrfutil/rwReal.h"
00019 #include "vrfutil/nLenRealVec.h"
00020 
00028 
00029 #include "vrfutil/vrfutilDefines.h"
00030 class DT_DLL_vrfutil Dt1DTableFn : public DtBaseTableFunction
00031 {
00032 public:
00033 
00035    Dt1DTableFn();
00036 
00038    Dt1DTableFn(const DtString& name, DtReaderWriterRegistry* 
00039       parentRegistry = NULL);
00040    Dt1DTableFn(const DtSymbolString& name, DtReaderWriterRegistry* 
00041       parentRegistry = NULL);
00042 
00044    virtual ~Dt1DTableFn();
00045 
00047    Dt1DTableFn(const Dt1DTableFn& orig);
00048 
00050    Dt1DTableFn(const DtString& name, const Dt1DTableFn& orig, 
00051       DtReaderWriterRegistry* parentRegistry = NULL);
00052    Dt1DTableFn(const DtSymbolString& name, const Dt1DTableFn& orig, 
00053       DtReaderWriterRegistry* parentRegistry = NULL);
00054 
00056    Dt1DTableFn& operator=(const Dt1DTableFn& orig);
00057 
00059    virtual bool init(const DtReal value);
00060 
00064    virtual bool init(
00065       const DtU32 n, const DtReal * domain, const DtReal * data);
00066 
00068    virtual bool init(const DtU32 n, 
00069                      const DtNLengthRealVector & domain, 
00070                      const DtNLengthRealVector & data); 
00071 
00075    virtual const char* readerWriterType() const;
00076 
00077 private:
00080    using DtBaseTableFunction::init;
00081 
00082 public:
00083 
00085    virtual DtReal lookup(DtReal coordinate1,...) const;
00086    virtual DtReal lookup(const DtReal * coordinates) const;
00087 
00089    virtual DtReal integrate(DtReal lower, DtReal upper,...) const;
00090 
00092    virtual void getSelf(DtlObjPtr args, const DtFilename& searchPath,
00093       const DtVariableBindingsList& variableBindings);  
00094 
00096    virtual void putData(FILE * fp, int indentLevel=0);
00097    virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath,
00098       const DtVariableBindingsList& variableBindings);
00099 
00100 protected:
00101 
00105    DtU32 findIndex(DtReal num) const;
00106 
00107 protected:
00108 
00109    DtNLengthRealVector myData;
00110    DtNLengthRealVector myDomain;
00111    DtNLengthRealVector myCollimatedData;
00112    DtReal * mySlope;
00113 
00114 };
00115 
00116 #endif

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)