/*************************************************************************** tnlEllpackGraph_impl.h - description ------------------- begin : Sep 9, 2015 copyright : (C) 2015 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /*************************************************************************** * * * This program 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 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef TNLELLPACKGRAPH_IMPL_H #define TNLELLPACKGRAPH_IMPL_H #include "tnlEllpackGraph.h" template< typename Device, typename Index > tnlEllpackGraph< Device, Index >:: tnlEllpackGraph() : maxLinksPerNode( 0 ), numberOfNodes( 0 ) { } template< typename Device, typename Index > void tnlEllpackGraph< Device, Index >:: setNumberOfNodes( const IndexType nodes ) { this->numberOfNodes = nodes; } template< typename Device, typename Index > void tnlEllpackGraph< Device, Index >:: setNumberOfLinksPerNode( const LinksPerNodesVectorType& linksPerNode ) { tnlAssert( linksPerNode.getSize() == this->numberOfNodes, cerr << "linksPerNode.getSize() = " << linksPerNode.getSize() << "this->numberOfNodes = " << this->numberOfNodes ); this->maxLinksPerNode = linksPerNode.max(); tnlAssert( this->maxLinksPerNode >= 0, cerr << "this->maxLinksPerNode = " << this->maxLinksPerNode ); } template< typename Device, typename Index > typename tnlEllpackGraph< Device, Index >::LinksAccessorType tnlEllpackGraph< Device, Index >:: getNodeLinksAccessor( const IndexType& nodeIndex ) { return LinksAccessorType( this->links.getData(), nodeIndex, this->maxLinksPerNode ); } template< typename Device, typename Index > typename tnlEllpackGraph< Device, Index >::ConstLinksAccessorType tnlEllpackGraph< Device, Index >:: getNodeLinksAccessor( const IndexType& nodeIndex ) const { return ConstLinksAccessorType( this->links.getData(), nodeIndex, this->maxLinksPerNode ); } #endif /* TNLELLPACKGRAPH_IMPL_H */