GranOO  3.0
A robust and versatile workbench to build 3D dynamic simulations based on the Discrete Element Method
Public Types | Public Member Functions | Public Attributes | List of all members
exprtk::details::node_depth_base< Node > Struct Template Reference

#include <Exprtk.hpp>

Public Types

typedef Node * node_ptr_t
 
typedef std::pair< node_ptr_t, bool > nb_pair_t
 

Public Member Functions

 node_depth_base ()
 
virtual ~node_depth_base ()
 
virtual std::size_t node_depth () const
 
std::size_t compute_node_depth (const Node *const &node) const
 
std::size_t compute_node_depth (const nb_pair_t &branch) const
 
template<std::size_t N>
std::size_t compute_node_depth (const nb_pair_t(&branch)[N]) const
 
template<typename BranchType >
std::size_t max_node_depth (const BranchType &n0, const BranchType &n1) const
 
template<typename BranchType >
std::size_t max_node_depth (const BranchType &n0, const BranchType &n1, const BranchType &n2) const
 
template<typename BranchType >
std::size_t max_node_depth (const BranchType &n0, const BranchType &n1, const BranchType &n2, const BranchType &n3) const
 
template<typename BranchType >
std::size_t compute_node_depth (const BranchType &n0, const BranchType &n1) const
 
template<typename BranchType >
std::size_t compute_node_depth (const BranchType &n0, const BranchType &n1, const BranchType &n2) const
 
template<typename BranchType >
std::size_t compute_node_depth (const BranchType &n0, const BranchType &n1, const BranchType &n2, const BranchType &n3) const
 
template<typename Allocator , template< typename, typename > class Sequence>
std::size_t compute_node_depth (const Sequence< node_ptr_t, Allocator > &branch_list) const
 
template<typename Allocator , template< typename, typename > class Sequence>
std::size_t compute_node_depth (const Sequence< nb_pair_t, Allocator > &branch_list) const
 
template<typename NodeSequence >
void collect (node_ptr_t const &node, const bool deletable, NodeSequence &delete_node_list) const
 
template<typename NodeSequence >
void collect (const nb_pair_t &branch, NodeSequence &delete_node_list) const
 
template<typename NodeSequence >
void collect (Node *&node, NodeSequence &delete_node_list) const
 
template<std::size_t N, typename NodeSequence >
void collect (const nb_pair_t(&branch)[N], NodeSequence &delete_node_list) const
 
template<typename Allocator , template< typename, typename > class Sequence, typename NodeSequence >
void collect (const Sequence< nb_pair_t, Allocator > &branch, NodeSequence &delete_node_list) const
 
template<typename Allocator , template< typename, typename > class Sequence, typename NodeSequence >
void collect (const Sequence< node_ptr_t, Allocator > &branch_list, NodeSequence &delete_node_list) const
 
template<typename Boolean , typename AllocatorT , typename AllocatorB , template< typename, typename > class Sequence, typename NodeSequence >
void collect (const Sequence< node_ptr_t, AllocatorT > &branch_list, const Sequence< Boolean, AllocatorB > &branch_deletable_list, NodeSequence &delete_node_list) const
 

Public Attributes

bool depth_set
 
std::size_t depth
 

Member Typedef Documentation

◆ nb_pair_t

template<typename Node >
typedef std::pair<node_ptr_t,bool> exprtk::details::node_depth_base< Node >::nb_pair_t

◆ node_ptr_t

template<typename Node >
typedef Node* exprtk::details::node_depth_base< Node >::node_ptr_t

Constructor & Destructor Documentation

◆ node_depth_base()

template<typename Node >
exprtk::details::node_depth_base< Node >::node_depth_base ( )
inline

◆ ~node_depth_base()

template<typename Node >
virtual exprtk::details::node_depth_base< Node >::~node_depth_base ( )
inlinevirtual

Member Function Documentation

◆ collect() [1/7]

template<typename Node >
template<typename NodeSequence >
void exprtk::details::node_depth_base< Node >::collect ( const nb_pair_t branch,
NodeSequence &  delete_node_list 
) const
inline

◆ collect() [2/7]

template<typename Node >
template<std::size_t N, typename NodeSequence >
void exprtk::details::node_depth_base< Node >::collect ( const nb_pair_t(&)  branch[N],
NodeSequence &  delete_node_list 
) const
inline

◆ collect() [3/7]

template<typename Node >
template<typename Allocator , template< typename, typename > class Sequence, typename NodeSequence >
void exprtk::details::node_depth_base< Node >::collect ( const Sequence< nb_pair_t, Allocator > &  branch,
NodeSequence &  delete_node_list 
) const
inline

◆ collect() [4/7]

template<typename Node >
template<typename Allocator , template< typename, typename > class Sequence, typename NodeSequence >
void exprtk::details::node_depth_base< Node >::collect ( const Sequence< node_ptr_t, Allocator > &  branch_list,
NodeSequence &  delete_node_list 
) const
inline

◆ collect() [5/7]

template<typename Node >
template<typename Boolean , typename AllocatorT , typename AllocatorB , template< typename, typename > class Sequence, typename NodeSequence >
void exprtk::details::node_depth_base< Node >::collect ( const Sequence< node_ptr_t, AllocatorT > &  branch_list,
const Sequence< Boolean, AllocatorB > &  branch_deletable_list,
NodeSequence &  delete_node_list 
) const
inline

◆ collect() [6/7]

template<typename Node >
template<typename NodeSequence >
void exprtk::details::node_depth_base< Node >::collect ( Node *&  node,
NodeSequence &  delete_node_list 
) const
inline

◆ collect() [7/7]

template<typename Node >
template<typename NodeSequence >
void exprtk::details::node_depth_base< Node >::collect ( node_ptr_t const &  node,
const bool  deletable,
NodeSequence &  delete_node_list 
) const
inline

◆ compute_node_depth() [1/8]

template<typename Node >
template<typename BranchType >
std::size_t exprtk::details::node_depth_base< Node >::compute_node_depth ( const BranchType &  n0,
const BranchType &  n1 
) const
inline

◆ compute_node_depth() [2/8]

template<typename Node >
template<typename BranchType >
std::size_t exprtk::details::node_depth_base< Node >::compute_node_depth ( const BranchType &  n0,
const BranchType &  n1,
const BranchType &  n2 
) const
inline

◆ compute_node_depth() [3/8]

template<typename Node >
template<typename BranchType >
std::size_t exprtk::details::node_depth_base< Node >::compute_node_depth ( const BranchType &  n0,
const BranchType &  n1,
const BranchType &  n2,
const BranchType &  n3 
) const
inline

◆ compute_node_depth() [4/8]

template<typename Node >
std::size_t exprtk::details::node_depth_base< Node >::compute_node_depth ( const nb_pair_t branch) const
inline

◆ compute_node_depth() [5/8]

template<typename Node >
template<std::size_t N>
std::size_t exprtk::details::node_depth_base< Node >::compute_node_depth ( const nb_pair_t(&)  branch[N]) const
inline

◆ compute_node_depth() [6/8]

template<typename Node >
std::size_t exprtk::details::node_depth_base< Node >::compute_node_depth ( const Node *const &  node) const
inline

◆ compute_node_depth() [7/8]

template<typename Node >
template<typename Allocator , template< typename, typename > class Sequence>
std::size_t exprtk::details::node_depth_base< Node >::compute_node_depth ( const Sequence< nb_pair_t, Allocator > &  branch_list) const
inline

◆ compute_node_depth() [8/8]

template<typename Node >
template<typename Allocator , template< typename, typename > class Sequence>
std::size_t exprtk::details::node_depth_base< Node >::compute_node_depth ( const Sequence< node_ptr_t, Allocator > &  branch_list) const
inline

◆ max_node_depth() [1/3]

template<typename Node >
template<typename BranchType >
std::size_t exprtk::details::node_depth_base< Node >::max_node_depth ( const BranchType &  n0,
const BranchType &  n1 
) const
inline

◆ max_node_depth() [2/3]

template<typename Node >
template<typename BranchType >
std::size_t exprtk::details::node_depth_base< Node >::max_node_depth ( const BranchType &  n0,
const BranchType &  n1,
const BranchType &  n2 
) const
inline

◆ max_node_depth() [3/3]

template<typename Node >
template<typename BranchType >
std::size_t exprtk::details::node_depth_base< Node >::max_node_depth ( const BranchType &  n0,
const BranchType &  n1,
const BranchType &  n2,
const BranchType &  n3 
) const
inline

◆ node_depth()

template<typename Node >
virtual std::size_t exprtk::details::node_depth_base< Node >::node_depth ( ) const
inlinevirtual

Reimplemented in exprtk::details::generic_function_node< T, GenericFunction >, exprtk::details::generic_function_node< T, StringFunction >, exprtk::details::generic_function_node< T, null_igenfunc< T > >, exprtk::details::exprtk_final< T >, exprtk::details::switch_node< T >, exprtk::details::quaternary_node< T >, exprtk::details::trinary_node< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::for_loop_node< T >, exprtk::details::repeat_until_loop_node< T >, exprtk::details::while_loop_node< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::exprtk_final< T >, exprtk::details::binary_node< T >, and exprtk::details::unary_node< T >.

Member Data Documentation

◆ depth

template<typename Node >
std::size_t exprtk::details::node_depth_base< Node >::depth
mutable

◆ depth_set

template<typename Node >
bool exprtk::details::node_depth_base< Node >::depth_set
mutable

The documentation for this struct was generated from the following file: