text: /*---------------------------------------------------------------------------*\
  Copyright (C) 2011-2019 OpenFOAM Foundation
  -------------------------------------------------------------------------------
  License
      This file is part of CAELUS.
  
      CAELUS is free software: you can redistribute it and/or modify it
      under the terms of the GNU General Public License as published by
      the Free Software Foundation, either version 3 of the License, or
      (at your option) any later version.
  
      CAELUS is distributed in the hope that it will be useful, but WITHOUT
      ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
      FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
      for more details.
  
      You should have received a copy of the GNU General Public License
      along with CAELUS.  If not, see <http://www.gnu.org/licenses/>.
  
  \*---------------------------------------------------------------------------*/
  
  #include "cyclicAMIPointPatch.hpp"
  #include "pointBoundaryMesh.hpp"
  #include "pointMesh.hpp"
  #include "Time.hpp"
  #include "addToRunTimeSelectionTable.hpp"
  
  // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
  
  namespace CML
  {
      defineTypeNameAndDebug(cyclicAMIPointPatch, 0);
      addToRunTimeSelectionTable
      (
          facePointPatch,
          cyclicAMIPointPatch,
          polyPatch
      );
  }
  
  
  // * * * * * * * * * * * * * Protected Member Functions  * * * * * * * * * * //
  
  void CML::cyclicAMIPointPatch::initGeometry(PstreamBuffers&)
  {}
  
  
  void CML::cyclicAMIPointPatch::calcGeometry(PstreamBuffers&)
  {}
  
  
  void CML::cyclicAMIPointPatch::initMovePoints
  (
      PstreamBuffers&,
      const pointField&
  )
  {}
  
  
  void CML::cyclicAMIPointPatch::movePoints(PstreamBuffers&, const pointField&)
  {}
  
  
  void CML::cyclicAMIPointPatch::initUpdateMesh(PstreamBuffers& pBufs)
  {
      facePointPatch::initUpdateMesh(pBufs);
  //    cyclicAMIPointPatch::initGeometry(pBufs);
  }
  
  
  void CML::cyclicAMIPointPatch::updateMesh(PstreamBuffers& pBufs)
  {
      facePointPatch::updateMesh(pBufs);
  //    cyclicAMIPointPatch::calcGeometry(pBufs);
  }
  
  
  // * * * * * * * * * * * * * * * * Constructors  * * * * * * * * * * * * * * //
  
  CML::cyclicAMIPointPatch::cyclicAMIPointPatch
  (
      const polyPatch& patch,
      const pointBoundaryMesh& bm
  )
  :
      coupledFacePointPatch(patch, bm),
      cyclicAMIPolyPatch_(refCast<const cyclicAMIPolyPatch>(patch))
  {}
  
  
  // * * * * * * * * * * * * * * * * Destructor  * * * * * * * * * * * * * * * //
  
  CML::cyclicAMIPointPatch::~cyclicAMIPointPatch()
  {}
  
  
  // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
  
  bool CML::cyclicAMIPointPatch::coupled() const
  {
      return
          Pstream::parRun()
       || !this->boundaryMesh().mesh().mesh().time().processorCase();
  }
  
  
  // ************************************************************************* //
  