AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects
Version of the Day
|
This is the complete list of members for AbstractLinAlgPack::MultiVectorMutableDense, including all inherited members.
access_by() const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
access_by_t typedef | AbstractLinAlgPack::MultiVector | |
apply_op(EApplyBy apply_by, const RTOpPack::RTOp &primary_op, const size_t num_multi_vecs, const MultiVector **multi_vecs, const size_t num_targ_multi_vecs, MultiVectorMutable **targ_multi_vecs, RTOpPack::ReductTarget *reduct_objs[], const index_type primary_first_ele, const index_type primary_sub_dim, const index_type primary_global_offset, const index_type secondary_first_ele, const index_type secondary_sub_dim) const | AbstractLinAlgPack::MultiVectorMutableDense | protected |
apply_op(EApplyBy apply_by, const RTOpPack::RTOp &primary_op, const RTOpPack::RTOp &secondary_op, const size_t num_multi_vecs, const MultiVector **multi_vecs, const size_t num_targ_multi_vecs, MultiVectorMutable **targ_multi_vecs, RTOpPack::ReductTarget *reduct_obj, const index_type primary_first_ele, const index_type primary_sub_dim, const index_type primary_global_offset, const index_type secondary_first_ele, const index_type secondary_sub_dim) const | AbstractLinAlgPack::MultiVectorMutableDense | protected |
AbstractLinAlgPack::MultiVectorMutable::apply_op(EApplyBy apply_by, const RTOpPack::RTOp &primary_op, const size_t num_multi_vecs, const MultiVector *multi_vecs[], const size_t num_targ_multi_vecs, MultiVectorMutable *targ_multi_vecs[], RTOpPack::ReductTarget *reduct_objs[], const index_type primary_first_ele, const index_type primary_sub_dim, const index_type primary_global_offset, const index_type secondary_first_ele, const index_type secondary_sub_dim) const | AbstractLinAlgPack::MultiVector | protectedvirtual |
AbstractLinAlgPack::MultiVectorMutable::apply_op(EApplyBy apply_by, const RTOpPack::RTOp &primary_op, const RTOpPack::RTOp &secondary_op, const size_t num_multi_vecs, const MultiVector *multi_vecs[], const size_t num_targ_multi_vecs, MultiVectorMutable *targ_multi_vecs[], RTOpPack::ReductTarget *reduct_obj, const index_type primary_first_ele, const index_type primary_sub_dim, const index_type primary_global_offset, const index_type secondary_first_ele, const index_type secondary_sub_dim) const | AbstractLinAlgPack::MultiVector | protectedvirtual |
calc_norm(EMatNormType requested_norm_type=MAT_NORM_1, bool allow_replacement=false) const | AbstractLinAlgPack::MatrixOp | |
clone() | AbstractLinAlgPack::MultiVectorMutable | virtual |
AbstractLinAlgPack::MultiVector::clone() const | AbstractLinAlgPack::MultiVector | virtual |
col(index_type j) | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
AbstractLinAlgPack::MultiVectorMutable::col(index_type j) const | AbstractLinAlgPack::MultiVectorMutable | virtual |
cols() const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
commit_gms_view(DMatrixSlice *gms_view) | AbstractLinAlgPack::MultiVectorMutableDense | |
diag(int k) | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
AbstractLinAlgPack::MultiVectorMutable::diag(int k) const | AbstractLinAlgPack::MultiVectorMutable | virtual |
EMatNormType enum name | AbstractLinAlgPack::MatrixOp | |
free_gms_view(const DMatrixSlice *gms_view) const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
get_gms() const | AbstractLinAlgPack::MultiVectorMutableDense | inline |
get_gms_view() const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
get_gms_view() | AbstractLinAlgPack::MultiVectorMutableDense | |
gms_release() const | AbstractLinAlgPack::MultiVectorMutableDense | inline |
gms_trans() const | AbstractLinAlgPack::MultiVectorMutableDense | inline |
initialize(const size_type rows, const size_type cols) | AbstractLinAlgPack::MultiVectorMutableDense | |
initialize(DMatrixSlice gms, BLAS_Cpp::Transp gms_trans, const release_resource_ptr_t &gms_release) | AbstractLinAlgPack::MultiVectorMutableDense | |
MAT_NORM_1 enum value | AbstractLinAlgPack::MatrixOp | |
MAT_NORM_2 enum value | AbstractLinAlgPack::MatrixOp | |
MAT_NORM_FORB enum value | AbstractLinAlgPack::MatrixOp | |
MAT_NORM_INF enum value | AbstractLinAlgPack::MatrixOp | |
Mp_StM(MatrixOp *mwo_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs) const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
Mp_StM(value_type alpha, const MatrixOp &M_rhs, BLAS_Cpp::Transp trans_rhs) | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StM(DMatrixSlice *gms_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
Mp_StMtM(MatrixOp *mwo_lhs, value_type alpha, const MatrixOp &mwo_rhs1, BLAS_Cpp::Transp trans_rhs1, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
Mp_StMtM(MatrixOp *mwo_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const MatrixOp &mwo_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
AbstractLinAlgPack::MatrixOp::Mp_StMtM(value_type alpha, const MatrixOp &mwo_rhs1, BLAS_Cpp::Transp trans_rhs1, const MatrixOp &mwo_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta) | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtM(DMatrixSlice *gms_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const DMatrixSlice &gms_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtM(DMatrixSlice *gms_lhs, value_type alpha, const DMatrixSlice &gms_rhs1, BLAS_Cpp::Transp trans_rhs1, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtM(DMatrixSlice *gms_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const MatrixOpSerial &mwo_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtM(DMatrixSlice *gms_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const DMatrixSliceSym &sym_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtM(DMatrixSlice *gms_lhs, value_type alpha, const DMatrixSliceSym &sym_rhs1, BLAS_Cpp::Transp trans_rhs1, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtM(DMatrixSlice *gms_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const DMatrixSliceTri &tri_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtM(DMatrixSlice *gms_lhs, value_type alpha, const DMatrixSliceTri &tri_rhs1, BLAS_Cpp::Transp trans_rhs1, BLAS_Cpp::Transp trans_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::Mp_StMtP(MatrixOp *mwo_lhs, value_type alpha, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::Mp_StMtP(value_type alpha, const MatrixOp &mwo_rhs, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans) | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtP(DMatrixSlice *gms_lhs, value_type alpha, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StMtP(MatrixOp *mwo_lhs, value_type alpha, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::Mp_StPtM(MatrixOp *mwo_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans, BLAS_Cpp::Transp M_trans) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::Mp_StPtM(value_type alpha, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans, const MatrixOp &mwo_rhs, BLAS_Cpp::Transp M_trans) | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StPtM(DMatrixSlice *gms_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans, BLAS_Cpp::Transp M_trans) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StPtM(MatrixOp *mwo_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans, BLAS_Cpp::Transp M_trans) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::Mp_StPtMtP(MatrixOp *mwo_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs2, BLAS_Cpp::Transp P_rhs2_trans) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::Mp_StPtMtP(value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, const MatrixOp &mwo_rhs, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs2, BLAS_Cpp::Transp P_rhs2_trans) | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StPtMtP(DMatrixSlice *gms_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs2, BLAS_Cpp::Transp P_rhs2_trans) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Mp_StPtMtP(MatrixOp *mwo_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs2, BLAS_Cpp::Transp P_rhs2_trans) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
Mt_S(value_type alpha) | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
multi_vec_mut_ptr_t typedef | AbstractLinAlgPack::MultiVectorMutable | |
multi_vec_ptr_t typedef | AbstractLinAlgPack::MultiVector | |
MultiVectorMutableDense(const size_type rows=0, const size_type cols=0) | AbstractLinAlgPack::MultiVectorMutableDense | |
MultiVectorMutableDense(DMatrixSlice gms, BLAS_Cpp::Transp gms_trans, const release_resource_ptr_t &gms_release) | AbstractLinAlgPack::MultiVectorMutableDense | |
mv_clone() | AbstractLinAlgPack::MultiVectorMutable | virtual |
mv_clone() const | AbstractLinAlgPack::MultiVectorMutable | virtual |
mv_sub_view(const Range1D &row_rng, const Range1D &col_rng) | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
AbstractLinAlgPack::MultiVectorMutable::mv_sub_view(const index_type &rl, const index_type &ru, const index_type &cl, const index_type &cu) | AbstractLinAlgPack::MultiVectorMutable | inline |
AbstractLinAlgPack::MultiVectorMutable::mv_sub_view(const Range1D &row_rng, const Range1D &col_rng) const | AbstractLinAlgPack::MultiVectorMutable | virtual |
AbstractLinAlgPack::MultiVector::mv_sub_view(const index_type &rl, const index_type &ru, const index_type &cl, const index_type &cu) const | AbstractLinAlgPack::MultiVector | inline |
nz() const | AbstractLinAlgPack::MatrixBase | virtual |
operator=(const MatrixOp &mwo_rhs) | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
output(std::ostream &out) const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
perm_view(const Permutation *P_row, const index_type row_part[], int num_row_part, const Permutation *P_col, const index_type col_part[], int num_col_part) const | AbstractLinAlgPack::MatrixOp | virtual |
perm_view_update(const Permutation *P_row, const index_type row_part[], int num_row_part, const Permutation *P_col, const index_type col_part[], int num_col_part, const mat_ptr_t &perm_view) const | AbstractLinAlgPack::MatrixOp | virtual |
release_resource_ptr_t typedef | AbstractLinAlgPack::MultiVectorMutableDense | |
row(index_type i) | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
AbstractLinAlgPack::MultiVectorMutable::row(index_type i) const | AbstractLinAlgPack::MultiVectorMutable | virtual |
rows() const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
set_gms() | AbstractLinAlgPack::MultiVectorMutableDense | inline |
AbstractLinAlgPack::space_cols() const =0 | AbstractLinAlgPack::MatrixBase | pure virtual |
AbstractLinAlgPack::MatrixOpSerial::space_cols() const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::space_rows() const =0 | AbstractLinAlgPack::MatrixBase | pure virtual |
AbstractLinAlgPack::MatrixOpSerial::space_rows() const | AbstractLinAlgPack::MatrixOpSerial | virtual |
sub_view(const Range1D &row_rng, const Range1D &col_rng) const | AbstractLinAlgPack::MultiVector | virtual |
AbstractLinAlgPack::MatrixOp::sub_view(const index_type &rl, const index_type &ru, const index_type &cl, const index_type &cu) const | AbstractLinAlgPack::MatrixOp | inline |
AbstractLinAlgPack::syr2k(BLAS_Cpp::Transp M_trans, value_type alpha, const GenPermMatrixSlice &P1, BLAS_Cpp::Transp P1_trans, const GenPermMatrixSlice &P2, BLAS_Cpp::Transp P2_trans, value_type beta, MatrixSymOp *symwo_lhs) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::syr2k(BLAS_Cpp::Transp M_trans, value_type alpha, const GenPermMatrixSlice &P1, BLAS_Cpp::Transp P1_trans, const GenPermMatrixSlice &P2, BLAS_Cpp::Transp P2_trans, value_type beta, DMatrixSliceSym *sym_lhs) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::syr2k(BLAS_Cpp::Transp M_trans, value_type alpha, const GenPermMatrixSlice &P1, BLAS_Cpp::Transp P1_trans, const GenPermMatrixSlice &P2, BLAS_Cpp::Transp P2_trans, value_type beta, MatrixSymOp *symwo_lhs) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
syrk(BLAS_Cpp::Transp M_trans, value_type alpha, value_type beta, MatrixSymOp *sym_lhs) const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
AbstractLinAlgPack::MultiVectorMutable::syrk(const MatrixOp &mwo_rhs, BLAS_Cpp::Transp M_trans, value_type alpha, value_type beta) | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::syrk(BLAS_Cpp::Transp M_trans, value_type alpha, value_type beta, DMatrixSliceSym *sym_lhs) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::transVtMtV(const Vector &v_rhs1, BLAS_Cpp::Transp trans_rhs2, const Vector &v_rhs3) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::transVtMtV(const SpVectorSlice &sv_rhs1, BLAS_Cpp::Transp trans_rhs2, const SpVectorSlice &sv_rhs3) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::transVtMtV(const DVectorSlice &vs_rhs1, BLAS_Cpp::Transp trans_rhs2, const DVectorSlice &vs_rhs3) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::transVtMtV(const Vector &v_rhs1, BLAS_Cpp::Transp trans_rhs2, const Vector &v_rhs3) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::transVtMtV(const SpVectorSlice &sv_rhs1, BLAS_Cpp::Transp trans_rhs2, const SpVectorSlice &sv_rhs3) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
vec_mut_ptr_t typedef | AbstractLinAlgPack::MultiVectorMutable | |
vec_ptr_t typedef | AbstractLinAlgPack::MultiVector | |
Vp_StMtV(DVectorSlice *vs_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const DVectorSlice &vs_rhs2, value_type beta) const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
Vp_StMtV(DVectorSlice *vs_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const SpVectorSlice &sv_rhs2, value_type beta) const | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
AbstractLinAlgPack::MultiVectorMutable::Vp_StMtV(VectorMutable *v_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const Vector &v_rhs2, value_type beta) const =0 | AbstractLinAlgPack::MatrixOp | protectedpure virtual |
AbstractLinAlgPack::MultiVectorMutable::Vp_StMtV(VectorMutable *v_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const SpVectorSlice &sv_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::Vp_StMtV(VectorMutable *v_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const Vector &v_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Vp_StMtV(VectorMutable *v_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const SpVectorSlice &sv_rhs2, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::Vp_StPtMtV(VectorMutable *v_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_rhs2_trans, const Vector &v_rhs3, value_type beta) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::Vp_StPtMtV(VectorMutable *v_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_rhs2_trans, const SpVectorSlice &sv_rhs3, value_type beta) const | AbstractLinAlgPack::MatrixOp | protectedvirtual |
AbstractLinAlgPack::MatrixOpSerial::Vp_StPtMtV(DVectorSlice *vs_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_rhs2_trans, const DVectorSlice &vs_rhs3, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Vp_StPtMtV(DVectorSlice *vs_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_rhs2_trans, const SpVectorSlice &sv_rhs3, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Vp_StPtMtV(VectorMutable *v_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_rhs2_trans, const Vector &v_rhs3, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
AbstractLinAlgPack::MatrixOpSerial::Vp_StPtMtV(VectorMutable *v_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_rhs2_trans, const SpVectorSlice &sv_rhs3, value_type beta) const | AbstractLinAlgPack::MatrixOpSerial | virtual |
zero_out() | AbstractLinAlgPack::MultiVectorMutableDense | virtual |
~MatrixBase() | AbstractLinAlgPack::MatrixBase | inlinevirtual |