diff --git a/src/postProcessing/functionObjects/field/wallBoundedStreamLine/wallBoundedParticle.C b/src/postProcessing/functionObjects/field/wallBoundedStreamLine/wallBoundedParticle.C index e73f4e72f4884857614ab45c4aca569ce215a760..99e9eb4a085508f719d8cc758d7fe3e7e31ea088 100644 --- a/src/postProcessing/functionObjects/field/wallBoundedStreamLine/wallBoundedParticle.C +++ b/src/postProcessing/functionObjects/field/wallBoundedStreamLine/wallBoundedParticle.C @@ -479,7 +479,19 @@ Foam::wallBoundedParticle::wallBoundedParticle { if (readFields) { - is >> meshEdgeStart_ >> diagEdge_; + if (is.format() == IOstream::ASCII) + { + is >> meshEdgeStart_ >> diagEdge_; + } + else + { + is.read + ( + reinterpret_cast<char*>(&meshEdgeStart_), + sizeof(meshEdgeStart_) + + sizeof(diagEdge_) + ); + } } // Check state of Istream @@ -504,71 +516,6 @@ Foam::wallBoundedParticle::wallBoundedParticle // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // -//void Foam::wallBoundedParticle::readFields -//( -// Cloud<wallBoundedParticle>& c -//) -//{ -// if (!c.size()) -// { -// return; -// } -// -// particle::readFields(c); -// -// IOField<label> meshEdgeStart -// ( -// c.fieldIOobject("meshEdgeStart", IOobject::MUST_READ) -// ); -// -// IOField<label> diagEdge -// ( -// c.fieldIOobject("diagEdge_", IOobject::MUST_READ) -// ); -// c.checkFieldIOobject(c, diagEdge); -// -// label i = 0; -// forAllIter(Cloud<wallBoundedParticle>, c, iter) -// { -// iter().meshEdgeStart_ = meshEdgeStart[i]; -// iter().diagEdge_ = diagEdge[i]; -// i++; -// } -//} -// -// -//void Foam::wallBoundedParticle::writeFields -//( -// const Cloud<wallBoundedParticle>& c -//) -//{ -// particle::writeFields(c); -// -// label np = c.size(); -// -// IOField<label> meshEdgeStart -// ( -// c.fieldIOobject("meshEdgeStart", IOobject::NO_READ), -// np -// ); -// IOField<label> diagEdge -// ( -// c.fieldIOobject("diagEdge", IOobject::NO_READ), -// np -// ); -// -// label i = 0; -// forAllConstIter(Cloud<wallBoundedParticle>, c, iter) -// { -// meshEdgeStart[i] = iter().meshEdgeStart_; -// diagEdge[i] = iter().diagEdge_; -// i++; -// } -// -// meshEdgeStart.write(); -// diagEdge.write(); -//} - void Foam::wallBoundedParticle::write(Ostream& os, bool writeFields) const { const particle& p = static_cast<const particle&>(*this);