/*************************************************************************** tnlEllpackGraph_impl.h - description ------------------- begin : Sep 10, 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 TNLELLPACKGRAPHLINKSACCESSOR_IMPL_H #define TNLELLPACKGRAPHLINKSACCESSOR_IMPL_H template< typename Device, typename Index > tnlEllpackGraphLinksAccessor< Device, Index >:: tnlEllpackGraphLinksAccessor( IndexType* graphLinks, const IndexType node, const IndexType maxLinksPerNode ) { this->links = &graphLinks[ node * maxLinksPerNode ]; this->maxLinksPerNode = maxLinksPerNode; } template< typename Device, typename Index > void tnlEllpackGraphLinksAccessor< Device, Index >:: setLink( const IndexType linkIndex, const IndexType targetNode ) { links[ linkIndex ] = targetNode; } template< typename Device, typename Index > Index tnlEllpackGraphLinksAccessor< Device, Index >:: getLinkTarget( const IndexType linkIndex ) const { return links[ linkIndex ]; } template< typename Device, typename Index > Index& tnlEllpackGraphLinksAccessor< Device, Index >:: operator[]( const IndexType linkIndex ) { return links[ linkIndex ]; } template< typename Device, typename Index > const Index& tnlEllpackGraphLinksAccessor< Device, Index >:: operator[]( const IndexType linkIndex ) const { return links[ linkIndex ]; } #endif /* TNLELLPACKGRAPHLINKSACCESSOR_IMPL_H */