/[escript]/branches/more_shared_ptrs_from_1812/escript/src/Data.h
ViewVC logotype

Diff of /branches/more_shared_ptrs_from_1812/escript/src/Data.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 969 by ksteube, Tue Feb 13 23:02:23 2007 UTC revision 1092 by gross, Fri Apr 13 03:39:49 2007 UTC
# Line 26  Line 26 
26    
27  extern "C" {  extern "C" {
28  #include "DataC.h"  #include "DataC.h"
29  /* #include "paso/Paso.h" doesn't belong in this file...causes trouble for BruceFactory.cpp */  #include "paso/Paso.h"
30  }  }
31    
32  #ifndef PASO_MPI  #ifndef PASO_MPI
# Line 254  class Data { Line 254  class Data {
254    ESCRIPT_DLL_API    ESCRIPT_DLL_API
255    bool    bool
256    isProtected() const;    isProtected() const;
257    
258    /**    /**
259       \brief       \brief
260       Return the values of all data-points as a single python numarray object.       Return the values of a data point on this process
261    */    */
262    ESCRIPT_DLL_API    ESCRIPT_DLL_API
263    const boost::python::numeric::array    const boost::python::numeric::array
264    convertToNumArray();    getValueOfDataPoint(int dataPointNo);
265    
266    /**    /**
267       \brief       \brief
268       Fills the expanded Data object from values of a python numarray object.       sets the values of a data-point from a python object on this process
269    */    */
270    ESCRIPT_DLL_API    ESCRIPT_DLL_API
271    void    void
272    fillFromNumArray(const boost::python::numeric::array);    setValueOfDataPointToPyObject(int dataPointNo, const boost::python::object& py_object);
   
   /**  
      \brief  
      Return the values of a data point on this process  
   */  
   ESCRIPT_DLL_API  
   const boost::python::numeric::array  
   getValueOfDataPoint(int dataPointNo);  
273    
274    /**    /**
275       \brief       \brief
276       sets the values of a data-point on this process       sets the values of a data-point from a numarray object on this process
277    */    */
278    ESCRIPT_DLL_API    ESCRIPT_DLL_API
279    void    void
280    setValueOfDataPointToArray(int dataPointNo, const boost::python::numeric::array);    setValueOfDataPointToArray(int dataPointNo, const boost::python::numeric::array&);
281    
282    /**    /**
283       \brief       \brief
# Line 582  class Data { Line 575  class Data {
575    DataArrayView::ValueType::size_type    DataArrayView::ValueType::size_type
576    getLength() const;    getLength() const;
577    
578    
579    
580      /**
581         \brief
582         Assign the given value to the tag assocciated with name. Implicitly converts this
583         object to type DataTagged. Throws an exception if this object
584         cannot be converted to a DataTagged object or name cannot be mapped onto a tag key.
585         \param tagKey - Input - Integer key.
586         \param value - Input - Value to associate with given key.
587        ==>*
588      */
589      ESCRIPT_DLL_API
590      void
591      setTaggedValueByName(std::string name,
592                           const boost::python::object& value);
593    
594    /**    /**
595       \brief       \brief
596       Assign the given value to the tag. Implicitly converts this       Assign the given value to the tag. Implicitly converts this
# Line 1379  class Data { Line 1388  class Data {
1388    // pointer to the actual data object    // pointer to the actual data object
1389    boost::shared_ptr<DataAbstract> m_data;    boost::shared_ptr<DataAbstract> m_data;
1390    
   //  
   // pointer to the internal profiling data  
   struct profDataEntry *profData;  
   
1391  };  };
1392    
1393  template <class IValueType>  template <class IValueType>
# Line 1413  Data::initialise(const IValueType& value Line 1418  Data::initialise(const IValueType& value
1418  inline double rpow(double x,double y)  inline double rpow(double x,double y)
1419  {  {
1420      return pow(y,x);      return pow(y,x);
1421  };  }
1422    
1423  /**  /**
1424    \brief    \brief
# Line 1602  Data::binaryOp(const Data& right, Line 1607  Data::binaryOp(const Data& right,
1607       EsysAssert((leftC!=0 && rightC!=0), "Programming error - casting to DataConstant.");       EsysAssert((leftC!=0 && rightC!=0), "Programming error - casting to DataConstant.");
1608       escript::binaryOp(*leftC,*rightC,operation);       escript::binaryOp(*leftC,*rightC,operation);
1609     }     }
    #if defined DOPROF  
    profData->binary++;  
    #endif  
1610  }  }
1611    
1612  /**  /**

Legend:
Removed from v.969  
changed lines
  Added in v.1092

  ViewVC Help
Powered by ViewVC 1.1.26