ViennaCL - The Vienna Computing Library  1.5.2
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 1234]
 Caccelerator_tagA tag identifying OpenCL devices as accelerators (e.g. Intel Xeon Phi)
 Cadvanced_cuthill_mckee_tagTag for the advanced Cuthill-McKee algorithm (i.e. running the 'standard' Cuthill-McKee algorithm for a couple of different seeds)
 Calignment< T >Retrieves the alignment from a vector. Deprecated - will be replaced by a pure runtime facility in the future
 Cambm_configConfiguration struct for generating OpenCL kernels for linear combinations of matrices
 Camg_nonzero_scalar< InternalType, IteratorType, ScalarType >A class for a scalar that can be written to the sparse matrix or sparse vector datatypes
 Camg_pointA class for the AMG points. Saves point index and influence measure Holds information whether point is undecided, C or F point. Holds lists of points that are influenced by or influencing this point
 Camg_pointvectorA class for the AMG points. Holds pointers of type amg_point in a vector that can be accessed using [point-index]. Additional list of pointers sorted by influence number and index to improve coarsening performance (see amg_coarse_classic_onepass() in amg_coarse.hpp) Constructs indices for C points on the coarse level, needed for interpolation
 Camg_precond< MatrixType >AMG preconditioner class, can be supplied to solve()-routines
 Camg_precond< compressed_matrix< ScalarType, MAT_ALIGNMENT > >AMG preconditioner class, can be supplied to solve()-routines
 Camg_slicing< InternalType1, InternalType2 >A class for the matrix slicing for parallel coarsening schemes (RS0/RS3)
 Camg_sparsematrix< ScalarType >A class for the sparse matrix type. Uses vector of maps as data structure for higher performance and lower memory usage. Uses similar interface as ublas::compressed_matrix. Can deal with transposed of matrix internally: Creation, Storage, Iterators, etc
 Camg_sparsevector< ScalarType >A class for the sparse vector type
 Camg_sparsevector< amg_point * >
 Camg_sparsevector_iterator< InternalType >Defines an iterator for the sparse vector type
 Camg_tagA tag for algebraic multigrid (AMG). Used to transport information from the user to the implementation
 Carray_deleter< U >Helper struct for deleting an pointer to an array
 Casbs_configConfiguration struct for generating OpenCL kernels for linear combinations of viennacl::scalar<> objects
 CauxInterface for the reference counter inside the shared_ptr
 Cavbv_configConfiguration struct for generating OpenCL kernels for linear combinations of vectors
 Cbackend< dummy >A backend that provides contexts for ViennaCL objects (vector, matrix, etc.)
 Cbasic_range< SizeType, DistanceType >A range class that refers to an interval [start, stop), where 'start' is included, and 'stop' is excluded
 Cbasic_slice< SizeType, DistanceType >A slice class that refers to an interval [start, stop), where 'start' is included, and 'stop' is excluded
 Cbicgstab_tagA tag for the stabilized Bi-conjugate gradient solver. Used for supplying solver parameters and for dispatching the solve() function
 Cblock_ilu_precond< MatrixType, ILUTag >A block ILU preconditioner class, can be supplied to solve()-routines
 Cblock_ilu_precond< compressed_matrix< ScalarType, MAT_ALIGNMENT >, ILUTag >ILUT preconditioner class, can be supplied to solve()-routines
 Cblock_matrixRepresents a contigious matrices on GPU
 Cblock_vectorRepresents a contigious vector on GPU
 Ccg_tagA tag for the conjugate gradient Used for supplying solver parameters and for dispatching the solve() function
 CCHECK_SCALAR_TEMPLATE_ARGUMENT< T >A guard that checks whether the floating point type of GPU types is either float or double
 Ccirculant_matrix< SCALARTYPE, ALIGNMENT >A Circulant matrix class
 Ccl_type< T >Metafunction for deducing the OpenCL type for a numeric type, e.g. float -> cl_float
 CclasscompComparison class for the sorted set of points in amg_pointvector. Set is sorted by influence measure from lower to higher with the point-index as tie-breaker
 Ccode_generatorClass for handling code generation
 Ccol_iterationA tag indicating iteration along increasing columns index of a matrix
 Ccolumn_majorA tag for column-major storage of a dense matrix
 Ccolumn_major_tagTag class for indicating column-major layout of a matrix. Not passed to the matrix directly, see row_major type
 Ccommand_queueA class representing a command queue
 CCompareSecondHelper functor for comparing std::pair<> based on the second member
 Ccompressed_compressed_matrix< SCALARTYPE >A sparse square matrix in compressed sparse rows format optimized for the case that only a few rows carry nonzero entries
 Ccompressed_compressed_matrix< NumericT >Main kernel class for generating OpenCL kernels for compressed_compressed_matrix
 Ccompressed_matrix< SCALARTYPE, ALIGNMENT >A sparse square matrix in compressed sparse rows format
 Ccompressed_matrix< NumericT >Main kernel class for generating OpenCL kernels for compressed_matrix
 Ccompressed_matrix< double >
 Ccompressed_matrix< float >
 Ccompressed_matrix< ScalarType >
 Ccompressed_matrix< ScalarType, MAT_ALIGNMENT >
 Cconst_entry_proxy< SCALARTYPE >A proxy class for a single element of a vector or matrix. This proxy should not be noticed by end-users of the library
 CCONST_REMOVER< T >Removes the const qualifier from a type
 Cconst_sparse_matrix_adapted_iterator< SCALARTYPE, SizeType, is_iterator1, is_forward >A const iterator for sparse matrices of type std::vector<std::map<SizeType, SCALARTYPE> >
 Cconst_sparse_matrix_adapter< SCALARTYPE, SizeType >Adapts a constant sparse matrix type made up from std::vector<std::map<SizeType, SCALARTYPE> > to basic ublas-compatibility
 Cconst_vector_iterator< SCALARTYPE, ALIGNMENT >A STL-type const-iterator for vector elements. Elements can be accessed, but cannot be manipulated. VERY SLOW!!
 CcontextManages an OpenCL context and provides the respective convenience functions for creating buffers, etc
 CcontextRepresents a generic 'context' similar to an OpenCL context, but is backend-agnostic and thus also suitable for CUDA and OpenMP
 Cconvert_to_opencl< T >Helper struct for converting a type to its OpenCL pendant
 Ccoordinate_matrix< SCALARTYPE, ALIGNMENT >A sparse square matrix, where entries are stored as triplets (i,j, val), where i and j are the row and column indices and val denotes the entry
 Ccoordinate_matrix< NumericT >Main kernel class for generating OpenCL kernels for coordinate_matrix
 Ccoordinate_matrix< double >
 Ccoordinate_matrix< float >
 CcountReference counting class for the shared_ptr implementation
 CCPU_SCALAR_TYPE_DEDUCER< T >Obtain the cpu scalar type from a type, including a GPU type like viennacl::scalar<T>
 Ccpu_tagA tag identifying OpenCL devices as CPUs
 Ccpu_value_type< T >Helper meta function for retrieving the main RAM-based value type. Particularly important to obtain T from viennacl::scalar<T> in a generic way
 Ccuda_deleter< U >Functor for deleting a CUDA handle. Used within the smart pointer class
 Ccuthill_mckee_tagA tag class for selecting the Cuthill-McKee algorithm for reducing the bandwidth of a sparse matrix
 Cdefault_deleter< U >Default deleter class for a pointer. The default is to just call 'delete' on the pointer. Provide your own implementations for 'delete[]' and 'free'
 Cdefault_tagA tag denoting the default OpenCL device type (SDK-specific)
 CdeviceA class representing a compute device (e.g. a GPU)
 CDOUBLE_PRECISION_CHECKER< ScalarType >Ensures that double precision types are only allocated if it is supported by the device. If double precision is requested for a device not capable of providing that, a double_precision_not_provided_error is thrown
 Cell_matrix< SCALARTYPE, ALIGNMENT >Sparse matrix class using the ELLPACK format for storing the nonzeros
 Cell_matrix< NumericT >Main kernel class for generating OpenCL kernels for ell_matrix
 Cell_matrix< double >
 Cell_matrix< float >
 Cenable_if< b, T >Simple enable-if variant that uses the SFINAE pattern
 Centry_proxy< SCALARTYPE >A proxy class for a single element of a vector or matrix. This proxy should not be noticed by end-users of the library
 Cerror_checker< T >An error reporting class. Template argument is used to avoid problems with external linkage
 Cexception
 Cexpression_descriptorA class for holding meta information such as the type or the underlying scalar type of an expression (such as x = inner_prod(y, z))
 CFastMatrix< SCALARTYPE >Internal helper class representing a row-major dense matrix used for the QR method for the purpose of computing eigenvalues
 Cfft< NumericT >Main kernel class for generating OpenCL kernels for the fast Fourier transform
 Cfirst_letter_of_type< T >Helper struct for obtaining the first letter of a type. Used internally by the generator only
 Cfspai_precond< MatrixType >Implementation of the Factored SParse Approximate Inverse Algorithm for a generic, uBLAS-compatible matrix type
 Cfspai_precond< viennacl::compressed_matrix< ScalarType, MAT_ALIGNMENT > >Implementation of the Factored SParse Approximate Inverse Algorithm for a ViennaCL compressed_matrix
 Cfspai_tagA tag for FSPAI. Experimental. Contains values for the algorithm. Must be passed to spai_precond constructor
 Cgibbs_poole_stockmeyer_tagTag class for identifying the Gibbs-Poole-Stockmeyer algorithm for reducing the bandwidth of a sparse matrix
 Cgmres_tagA tag for the solver GMRES. Used for supplying solver parameters and for dispatching the solve() function
 Cgpu_tagA tag identifying OpenCL devices as GPUs
 Chandle< OCL_TYPE >Handle class the effectively represents a smart pointer for OpenCL handles
 Chandle< cl_command_queue >
 Chandle< cl_context >
 Chandle< cl_kernel >
 Chandle< cl_mem >
 Chandle< cl_program >
 Chandle_funFunctor for obtaining the OpenCL handle from ViennaCL objects (vector, matrix, etc.)
 Chandle_inc_dec_helper< OCL_TYPE >Helper for OpenCL reference counting used by class handle
 Chankel_matrix< SCALARTYPE, ALIGNMENT >A Hankel matrix class
 Chyb_matrix< SCALARTYPE, ALIGNMENT >Sparse matrix class using a hybrid format composed of the ELL and CSR format for storing the nonzeros
 Chyb_matrix< NumericT >Main kernel class for generating OpenCL kernels for hyb_matrix
 Chyb_matrix< double >
 Chyb_matrix< float >
 Cichol0_precond< MatrixType >Incomplete Cholesky preconditioner class with static pattern (ICHOL0), can be supplied to solve()-routines
 Cichol0_precond< compressed_matrix< ScalarType, MAT_ALIGNMENT > >ILU0 preconditioner class, can be supplied to solve()-routines
 Cichol0_tagA tag for incomplete Cholesky factorization with static pattern (ILU0)
 Cidentity_matrix< SCALARTYPE >Represents a vector consisting of 1 at a given index and zeros otherwise. To be used as an initializer for viennacl::vector, vector_range, or vector_slize only
 Cilu< NumericT >Main kernel class for generating OpenCL kernels for incomplete LU factorization preconditioners
 Cilu0_precond< MatrixType >ILU0 preconditioner class, can be supplied to solve()-routines
 Cilu0_precond< compressed_matrix< ScalarType, MAT_ALIGNMENT > >ILU0 preconditioner class, can be supplied to solve()-routines
 Cilu0_tagA tag for incomplete LU factorization with static pattern (ILU0)
 Cilu_vector_range< VectorType, ValueType, SizeType >Helper range class for representing a subvector of a larger buffer
 Cilut_precond< MatrixType >ILUT preconditioner class, can be supplied to solve()-routines
 Cilut_precond< compressed_matrix< ScalarType, MAT_ALIGNMENT > >ILUT preconditioner class, can be supplied to solve()-routines
 Cilut_tagA tag for incomplete LU factorization with threshold (ILUT)
 Cimplicit_matrix_base< SCALARTYPE >Base class for representing matrices where the individual entries are not all stored explicitly, e.g. identity_matrix<>
 Cimplicit_matrix_base< double >
 Cimplicit_matrix_base< float >
 Cimplicit_vector_base< SCALARTYPE >Common base class for representing vectors where the entries are not all stored explicitly
 Cimplicit_vector_base< double >
 Cimplicit_vector_base< float >
 Cinfo< T >Helper class for obtaining informations from the OpenCL backend. Deprecated!
 Cinternal_size1_funFunctor for obtaining the internal number of rows of a ViennaCL matrix
 Cinternal_size2_funFunctor for obtaining the internal number of columns of a ViennaCL matrix
 Cinternal_size_funFunctor for returning the internal size of a vector
 Cis_addition< T >Helper metafunction for checking whether the provided type is viennacl::op_add (for addition)
 Cis_any_dense_matrix< T >Checks for either matrix_base or implicit_matrix_base
 Cis_any_dense_structured_matrix< T >Helper class for checking whether the provided type is any of the dense structured matrix types (circulant, Hankel, etc.)
 Cis_any_scalar< T >Helper struct for checking whether the provided type represents a scalar (either host, from ViennaCL, or a flip-sign proxy)
 Cis_any_sparse_matrix< T >Helper class for checking whether the provided type is one of the sparse matrix types (compressed_matrix, coordinate_matrix, etc.)
 Cis_any_vector< T >Checks for a type being either vector_base or implicit_vector_base
 Cis_circulant_matrix< T >Helper class for checking whether a matrix is a circulant matrix
 Cis_compressed_matrix< T >Helper class for checking whether a matrix is a compressed_matrix (CSR format)
 Cis_coordinate_matrix< T >Helper class for checking whether a matrix is a coordinate_matrix (COO format)
 Cis_cpu_scalar< T >Helper struct for checking whether a type is a host scalar type (e.g. float, double)
 Cis_division< T >Helper metafunction for checking whether the provided type is viennacl::op_div (for division)
 Cis_eigen< Tag >Meta function which checks whether a tag is tag_eigen
 Cis_ell_matrix< T >Helper class for checking whether a matrix is an ell_matrix (ELL format)
 Cis_flip_sign_scalar< T >Helper struct for checking whether a type represents a sign flip on a viennacl::scalar<>
 Cis_hankel_matrix< T >Helper class for checking whether a matrix is a Hankel matrix
 Cis_hyb_matrix< T >Helper class for checking whether a matrix is a hyb_matrix (hybrid format: ELL plus CSR)
 Cis_mtl4< Tag >Meta function which checks whether a tag is tag_mtl4
 Cis_primitive_type< T >Helper class for checking whether a type is a primitive type
 Cis_product< T >Helper metafunction for checking whether the provided type is viennacl::op_prod (for products/multiplication)
 Cis_row_major< T >Helper class for checking whether a matrix has a row-major layout
 Cis_same_type< T, U >Helper metafunction for checking whether two types are the same
 Cis_scalar< T >Helper struct for checking whether a type is a viennacl::scalar<>
 Cis_stl< Tag >Meta function which checks whether a tag is tag_ublas
 Cis_subtraction< T >Helper metafunction for checking whether the provided type is viennacl::op_sub (for subtraction)
 Cis_toeplitz_matrix< T >Helper class for checking whether a matrix is a Toeplitz matrix
 Cis_ublas< Tag >Meta function which checks whether a tag is tag_ublas
 Cis_vandermonde_matrix< T >Helper class for checking whether a matrix is a Vandermonde matrix
 Cis_viennacl< Tag >Meta function which checks whether a tag is tag_viennacl
 Cjacobi_precond< MatrixType, is_viennacl >Jacobi preconditioner class, can be supplied to solve()-routines. Generic version for non-ViennaCL matrices
 Cjacobi_precond< MatrixType, true >Jacobi preconditioner class, can be supplied to solve()-routines
 Cjacobi_tagA tag for a jacobi preconditioner
 CkernelRepresents an OpenCL kernel within ViennaCL
 Clanczos_tagA tag for the lanczos algorithm
 Clayout_type_id< F >Helper metafunction for obtaining the memory layout (row-/column-major) for a matrix
 Clhs_rhs_elementA class representing the 'data' for the LHS or RHS operand of the respective node
 Clocal_memA class representing local (shared) OpenCL memory. Typically used as kernel argument
 Clower_tagA tag class representing a lower triangular matrix
 Cmajority_struct_for_orientation< T >Returns the row_major or column_major class of a dense matrix based on the majority-tag (layout-tag) provided
 Cmap_wrapper< KeyType, ValueType >Helper struct for mapping a std::map<KeyType, ValueType>. Used to avoids type length explosion when using nested std::map directly
 Cmap_wrapper< device_name_type, expression_map >
 Cmap_wrapper< device_type, device_architecture_map >
 Cmap_wrapper< expression_key_type, profile_base_ptr >
 Cmap_wrapper< vendor_id_type, device_type_map >
 Cmap_wrapper< viennacl::ocl::device_architecture_family, device_name_map >
 Cmapped_objectBase class for mapping viennacl datastructure to generator-friendly structures
 Cmat_mult_matrix_index< LayoutT >Helper struct for accessing an element of a row- or column-major matrix
 Cmatrix< NumericT, F >Main kernel class for generating OpenCL kernels for operations on/with dense matrix objects of type viennacl::matrix<>
 Cmatrix_array_wrapper< NumericT, MajorityCategory, is_transposed >Helper array for accessing a strided submatrix embedded in a larger matrix
 Cmatrix_base< SCALARTYPE, F, SizeType, DistanceType >A dense matrix class
 Cmatrix_base< double >
 Cmatrix_base< double, viennacl::viennacl::column_major >
 Cmatrix_base< float >
 Cmatrix_base< float, viennacl::viennacl::column_major >
 Cmatrix_base< MatrixType::cpu_value_type, MatrixType::orientation_functor >
 Cmatrix_base< SCALARTYPE, F >
 Cmatrix_element< NumericT, F >Main kernel class for generating OpenCL kernels for elementwise-operations such as element_sin() on/with dense matrix objects of type viennacl::matrix<>
 Cmatrix_expression< LHS, RHS, OP >Expression template class for representing a tree of expressions which ultimately result in a matrix
 Cmatrix_iterator< ROWCOL, MATRIXTYPE >UBLAS-like iterator class for iterating over the entries of a dense matrix
 CMATRIX_ITERATOR_INCREMENTER< ROWCOL, MATRIXTYPE >Helper class for incrementing an iterator in a dense matrix
 Cmatrix_prod< NumericT, F_A, F_B, F_C >Main kernel class for the generation of matrix-matrix product kernels C = A * B
 CMATRIX_SIZE_DEDUCER< LHS, RHS, OP >Deduces the size of the resulting vector represented by a vector_expression from the operands
 Cmatrix_solve< NumericT, F1, F2 >Main kernel class for the generation of matrix solve kernels
 Cmem_handleMain abstraction class for multiple memory domains. Represents a buffer in either main RAM, an OpenCL context, or a CUDA device
 Cmixed_precision_cg_tagA tag for the conjugate gradient Used for supplying solver parameters and for dispatching the solve() function
 Cnmf< NumericT >Main kernel class for generating OpenCL kernels for nonnegative matrix factorization of a dense matrices
 Cnmf_configConfiguration class for the nonnegative-matrix-factorization algorithm. Specify tolerances, maximum iteration counts, etc., here
 Cno_precondA tag class representing the use of no preconditioner
 Cnum_nodes< T >Helper metafunction for obtaining the number of nodes of an expression template tree
 Cnumeric_type_id< T >Helper metafunction for obtaining the runtime type ID for a numerical type
 Cop_absA tag class representing the modulus function for integers
 Cop_acosA tag class representing the acos() function
 Cop_addA tag class representing addition
 Cop_applier< OP >Worker class for decomposing expression templates
 Cop_asinA tag class representing the asin() function
 Cop_assignA tag class representing assignment
 Cop_atanA tag class representing the atan() function
 Cop_atan2A tag class representing the atan2() function
 Cop_ceilA tag class representing the ceil() function
 Cop_columnA tag class representing the extraction of a matrix column to a vector
 Cop_cosA tag class representing the cos() function
 Cop_coshA tag class representing the cosh() function
 Cop_divA tag class representing division
 Cop_elementStruct for holding the type family as well as the type of an operation (could be addition, subtraction, norm, etc.)
 Cop_element_binary< OP >A tag class representing element-wise binary operations (like multiplication) on vectors or matrices
 Cop_element_unary< OP >A tag class representing element-wise unary operations (like sin()) on vectors or matrices
 Cop_executor< A, OP, T >Worker class for decomposing expression templates
 Cop_expA tag class representing the exp() function
 Cop_fabsA tag class representing the fabs() function
 Cop_fdimA tag class representing the fdim() function
 Cop_flip_signA tag class representing sign flips (for scalars only. Vectors and matrices use the standard multiplication by the scalar -1.0)
 Cop_floorA tag class representing the floor() function
 Cop_fmaxA tag class representing the fmax() function
 Cop_fminA tag class representing the fmin() function
 Cop_fmodA tag class representing the fmod() function
 Cop_inner_prodA tag class representing inner products of two vectors
 Cop_inplace_addA tag class representing inplace addition
 Cop_inplace_subA tag class representing inplace subtraction
 Cop_logA tag class representing the log() function
 Cop_log10A tag class representing the log10() function
 Cop_mat_mat_prodA tag class representing matrix-matrix products
 Cop_matrix_diagA tag class representing the (off-)diagonal of a matrix
 Cop_multA tag class representing multiplication by a scalar
 Cop_norm_1A tag class representing the 1-norm of a vector
 Cop_norm_2A tag class representing the 2-norm of a vector
 Cop_norm_frobeniusA tag class representing the Frobenius-norm of a matrix
 Cop_norm_infA tag class representing the inf-norm of a vector
 Cop_powA tag class representing the power function
 Cop_prodA tag class representing matrix-vector products and element-wise multiplications
 Cop_rowA tag class representing the extraction of a matrix row to a vector
 Cop_sinA tag class representing the sin() function
 Cop_sinhA tag class representing the sinh() function
 Cop_sqrtA tag class representing the sqrt() function
 Cop_subA tag class representing subtraction
 Cop_tanA tag class representing the tan() function
 Cop_tanhA tag class representing the tanh() function
 Cop_transA tag class representing transposed matrices
 Cop_type_info< T >Helper metafunction for obtaining the operation ID as well as the operation family for unary and binary operations on vectors and matrices
 Cop_vector_diagA tag class representing a matrix given by a vector placed on a certain (off-)diagonal
 Corientation_functor< T >Returns the orientation functor tag (either row_major or column_major) of a matrix
 Costream
 Cpacked_cl_uintHelper class for packing four cl_uint numbers into a uint4 type for access inside an OpenCL kernel
 CplatformWrapper class for an OpenCL platform
 Cpower_iter_tagA tag for the power iteration algorithm
 Cprofile_baseBase class for an operation profile
 CprogramWrapper class for an OpenCL program
 Crow_iterationA tag indicating iteration along increasing row index of a matrix
 Crow_majorA tag for row-major storage of a dense matrix
 Crow_major_tagTag class for indicating row-major layout of a matrix. Not passed to the matrix directly, see row_major type
 Crow_scaling< MatrixType, is_viennacl >Jacobi-type preconditioner class, can be supplied to solve()-routines. This is a diagonal preconditioner with the diagonal entries being (configurable) row norms of the matrix
 Crow_scaling< MatrixType, true >Jacobi preconditioner class, can be supplied to solve()-routines
 Crow_scaling_tagA tag for a row scaling preconditioner which merely normalizes the equation system such that each row of the system matrix has unit norm
 Cscalar< SCALARTYPE >This class represents a single scalar value on the GPU and behaves mostly like a built-in scalar type like float or double
 Cscalar< TYPE >Main kernel class for generating OpenCL kernels for operations involving viennacl::scalar<>, but not viennacl::vector<> or viennacl::matrix<>
 Cscalar< double >
 Cscalar< float >
 Cscalar_expression< LHS, RHS, OP >A proxy for scalar expressions (e.g. from inner vector products)
 Cscalar_expression< LHS, RHS, op_inner_prod >Specialization of a scalar expression for inner products. Allows for a final reduction on the CPU
 Cscalar_expression< LHS, RHS, op_norm_1 >Specialization of a scalar expression for norm_1. Allows for a final reduction on the CPU
 Cscalar_expression< LHS, RHS, op_norm_2 >Specialization of a scalar expression for norm_2. Allows for a final reduction on the CPU
 Cscalar_expression< LHS, RHS, op_norm_frobenius >Specialization of a scalar expression for norm_frobenius. Allows for a final reduction on the CPU
 Cscalar_expression< LHS, RHS, op_norm_inf >Specialization of a scalar expression for norm_inf. Allows for a final reduction on the CPU
 Cscalar_matrix< SCALARTYPE >Represents a vector consisting of scalars 's' only, i.e. v[i] = s for all i. To be used as an initializer for viennacl::vector, vector_range, or vector_slize only
 Cscalartype_size_funFunctor for returning the size of the underlying scalar type in bytes
 Cshared_ptr< T >A shared pointer class similar to boost::shared_ptr. Reimplemented in order to avoid a Boost-dependency. Will be replaced by std::shared_ptr as soon as C++11 is widely available
 Cshared_ptr< char >
 Csize_type< T >Generic meta-function for retrieving the size_type associated with type T
 Cspai< NumericT >Main kernel class for generating OpenCL kernels for the sparse approximate inverse preconditioners
 Cspai_precond< MatrixType >Implementation of the SParse Approximate Inverse Algorithm for a generic, uBLAS-compatible matrix type
 Cspai_precond< viennacl::compressed_matrix< ScalarType, MAT_ALIGNMENT > >Implementation of the SParse Approximate Inverse Algorithm for a ViennaCL compressed_matrix
 Cspai_tagA tag for SPAI Contains values for the algorithm. Must be passed to spai_precond constructor
 Csparse_matrix_adapted_iterator< SCALARTYPE, SizeType, is_iterator1 >A non-const iterator for sparse matrices of type std::vector<std::map<SizeType, SCALARTYPE> >
 Csparse_vector< ScalarType >Represents sparse vector based on std::map<unsigned int, ScalarType>
 CstatementThe main class for representing a statement such as x = inner_prod(y,z); at runtime
 Cstatement_nodeMain datastructure for an node in the statement tree
 Csvd< NumericT >Main kernel class for generating OpenCL kernels for singular value decomposition of dense matrices
 Ctag_eigenA tag class for identifying types from Eigen
 Ctag_mtl4A tag class for identifying types from MTL4
 Ctag_noneA tag class for identifying 'unknown' types
 Ctag_of< T, Active >Generic base for wrapping other linear algebra packages
 Ctag_stlA tag class for identifying types from the C++ STL
 Ctag_ublasA tag class for identifying types from uBLAS
 Ctag_viennaclA tag class for identifying types from ViennaCL
 CtimerSimple timer class based on gettimeofday (POSIX) or QueryPerformanceCounter (Windows)
 Ctoeplitz_matrix< SCALARTYPE, ALIGNMENT >A Toeplitz matrix class
 Ctraversal_functorBase functor class for traversing a statement
 Ctuning_config< ConfigType >Tuning configuration
 Ctuning_paramClass for a tuning parameter
 Ctype_to_string< T >Helper class for converting a type to its string representation
 Ctype_to_string< T >Helper struct for converting a numerical type to its string representation
 Ctypesafe_host_array< T, special >Helper class implementing an array on the host. Default case: No conversion necessary
 Ctypesafe_host_array< T, true >Special host array type for conversion between OpenCL types and pure CPU types
 Cunit_lower_tagA tag class representing a lower triangular matrix with unit diagonal
 Cunit_upper_tagA tag class representing an upper triangular matrix with unit diagonal
 Cupper_tagA tag class representing an upper triangular matrix
 Cvalue_type< T >Generic helper function for retrieving the value_type associated with type T
 Cvandermonde_matrix< SCALARTYPE, ALIGNMENT >A Vandermonde matrix class
 Cvector< TYPE >Main kernel class for generating OpenCL kernels for operations on/with viennacl::vector<> without involving matrices, multiple inner products, or element-wise operations other than addition or subtraction
 Cvector_array_wrapper< NumericT >Helper class for accessing a strided subvector of a larger vector
 Cvector_base< SCALARTYPE, SizeType, DistanceType >Common base class for dense vectors, vector ranges, and vector slices
 Cvector_base< double >
 Cvector_base< float >
 Cvector_base< SCALARTYPE >
 Cvector_base< ScalarType >
 Cvector_base< VectorType::cpu_value_type >
 Cvector_element< TYPE >Main kernel class for generating OpenCL kernels for elementwise operations other than addition and subtraction on/with viennacl::vector<>
 Cvector_expression< LHS, RHS, OP >An expression template class that represents a binary operation that yields a vector
 Cvector_multi_inner_prod< TYPE >Main kernel class for generating OpenCL kernels for multiple inner products on/with viennacl::vector<>
 Cvector_tuple< ScalarT >Tuple class holding pointers to multiple vectors. Mainly used as a temporary object returned from viennacl::tie()
 Czero_matrix< SCALARTYPE >Represents a vector consisting of zeros only. To be used as an initializer for viennacl::vector, vector_range, or vector_slize only