%newobject ParaMEDMEM::MEDCouplingAMRAttribute::deepCpy;
%newobject ParaMEDMEM::MEDCouplingAMRAttribute::deepCpyWithoutGodFather;
%newobject ParaMEDMEM::MEDCouplingAMRAttribute::getFieldOn;
+%newobject ParaMEDMEM::MEDCouplingAMRAttribute::projectTo;
%newobject ParaMEDMEM::MEDCouplingAMRAttribute::buildCellFieldOnRecurseWithoutOverlapWithoutGhost;
%newobject ParaMEDMEM::MEDCouplingAMRAttribute::buildCellFieldOnWithGhost;
%newobject ParaMEDMEM::MEDCouplingAMRAttribute::buildCellFieldOnWithoutGhost;
return MEDCouplingStructuredMesh::ExtractFieldOfDoubleFrom(st,fieldOfDbl,inp);
}
+ static void AssignPartOfFieldOfDoubleUsing(const std::vector<int>& st, DataArrayDouble *fieldOfDbl, PyObject *partCompactFormat, const DataArrayDouble *other) throw(INTERP_KERNEL::Exception)
+ {
+ std::vector< std::pair<int,int> > inp;
+ convertPyToVectorPairInt(partCompactFormat,inp);
+ MEDCouplingStructuredMesh::AssignPartOfFieldOfDoubleUsing(st,fieldOfDbl,inp,other);
+ }
+
static int DeduceNumberOfGivenRangeInCompactFrmt(PyObject *part) throw(INTERP_KERNEL::Exception)
{
std::vector< std::pair<int,int> > inp;
return retPy;
}
+ static bool AreRangesIntersect(PyObject *r1, PyObject *r2)
+ {
+ std::vector< std::pair<int,int> > r1Cpp,r2Cpp;
+ convertPyToVectorPairInt(r1,r1Cpp);
+ convertPyToVectorPairInt(r2,r2Cpp);
+ return MEDCouplingStructuredMesh::AreRangesIntersect(r1Cpp,r2Cpp);
+ }
+
static PyObject *IsPartStructured(PyObject *li, PyObject *st) throw(INTERP_KERNEL::Exception)
{
int szArr,sw,iTypppArr;
class MEDCouplingCartesianAMRMeshGen : public RefCountObject, public TimeLabel
{
public:
- virtual MEDCouplingCartesianAMRMeshGen *deepCpy(MEDCouplingCartesianAMRMeshGen *father) const throw(INTERP_KERNEL::Exception);
int getAbsoluteLevel() const throw(INTERP_KERNEL::Exception);
int getAbsoluteLevelRelativeTo(const MEDCouplingCartesianAMRMeshGen *ref) const throw(INTERP_KERNEL::Exception);
std::vector<int> getPositionRelativeTo(const MEDCouplingCartesianAMRMeshGen *ref) const throw(INTERP_KERNEL::Exception);
return ret;
}
+ // agy : don't know why typemap fails here ??? let it in the extend section
+ PyObject *deepCpy(MEDCouplingCartesianAMRMeshGen *father) const throw(INTERP_KERNEL::Exception)
+ {
+ return convertCartesianAMRMesh(self->deepCpy(father), SWIG_POINTER_OWN | 0 );
+ }
+
MEDCouplingCartesianAMRPatch *getPatchAtPosition(const std::vector<int>& pos) const throw(INTERP_KERNEL::Exception)
{
const MEDCouplingCartesianAMRPatch *ret(self->getPatchAtPosition(pos));
return ret2;
}
+ virtual PyObject *positionRelativeToGodFather() const throw(INTERP_KERNEL::Exception)
+ {
+ std::vector<int> out1;
+ std::vector< std::pair<int,int> > out0(self->positionRelativeToGodFather(out1));
+ PyObject *ret(PyTuple_New(2));
+ PyTuple_SetItem(ret,0,convertFromVectorPairInt(out0));
+ PyTuple_SetItem(ret,1,convertIntArrToPyList2(out1));
+ return ret;
+ }
+
virtual PyObject *retrieveGridsAt(int absoluteLev) const throw(INTERP_KERNEL::Exception)
{
std::vector<MEDCouplingCartesianAMRPatchGen *> ps(self->retrieveGridsAt(absoluteLev));
MEDCouplingFieldDouble *buildCellFieldOnWithGhost(MEDCouplingCartesianAMRMeshGen *mesh, const std::string& fieldName) const throw(INTERP_KERNEL::Exception);
MEDCouplingFieldDouble *buildCellFieldOnWithoutGhost(MEDCouplingCartesianAMRMeshGen *mesh, const std::string& fieldName) const throw(INTERP_KERNEL::Exception);
bool changeGodFather(MEDCouplingCartesianAMRMesh *gf) throw(INTERP_KERNEL::Exception);
+ MEDCouplingAMRAttribute *projectTo(MEDCouplingCartesianAMRMesh *targetGF) const throw(INTERP_KERNEL::Exception);
%extend
{
static MEDCouplingAMRAttribute *New(MEDCouplingCartesianAMRMesh *gf, PyObject *fieldNames, int ghostLev) throw(INTERP_KERNEL::Exception)