Constants.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  { Aligned, Unaligned }
enum  { ForceAligned, AsRequested }
enum  { ConditionalJumpCost = 5 }
enum  { InnerVectorization, LinearVectorization, SliceVectorization, NoVectorization }
enum  { NoUnrolling, InnerUnrolling, CompleteUnrolling }
enum  { ColMajor = 0, RowMajor = 0x1, DontAlign = 0, AutoAlign = 0x2 }
enum  { IsDense = 0, IsSparse = SparseBit, NoDirectAccess = 0, HasDirectAccess = DirectAccessBit }
enum  CornerType { TopLeft, TopRight, BottomLeft, BottomRight }
enum  DirectionType { Vertical, Horizontal }
enum  ProductEvaluationMode {
  NormalProduct, CacheFriendlyProduct, DiagonalProduct, SparseTimeSparseProduct,
  SparseTimeDenseProduct, DenseTimeSparseProduct
}

Variables

const unsigned int ActualPacketAccessBit = 0x0
const unsigned int AlignedBit = 0x40
const unsigned int Diagonal = UpperTriangular | LowerTriangular
const unsigned int DirectAccessBit = 0x20
const int Dynamic = 10000
const int EiArch = EiArch_Generic
const int EiArch_AltiVec = 0x2
const int EiArch_Generic = 0x0
const int EiArch_SSE = 0x1
const unsigned int EvalBeforeAssigningBit = 0x4
const unsigned int EvalBeforeNestingBit = 0x2
const unsigned int HereditaryBits
const int Infinity = -1
const unsigned int LinearAccessBit = 0x10
const unsigned int LowerTriangular = LowerTriangularBit
const unsigned int LowerTriangularBit = 0x800
const unsigned int PacketAccessBit = 0x8
const unsigned int RowMajorBit = 0x1
const unsigned int SelfAdjoint = SelfAdjointBit
const unsigned int SelfAdjointBit = 0x200
const unsigned int SparseBit = 0x1000
const unsigned int StrictlyLowerTriangular = LowerTriangularBit | ZeroDiagBit
const unsigned int StrictlyUpperTriangular = UpperTriangularBit | ZeroDiagBit
const unsigned int UnitDiagBit = 0x100
const unsigned int UnitLowerTriangular = LowerTriangularBit | UnitDiagBit
const unsigned int UnitUpperTriangular = UpperTriangularBit | UnitDiagBit
const unsigned int UpperTriangular = UpperTriangularBit
const unsigned int UpperTriangularBit = 0x400
const unsigned int ZeroDiagBit = 0x80

Enumeration Type Documentation

anonymous enum
Enumerator:
Aligned 
Unaligned 

Definition at line 199 of file Constants.h.

anonymous enum
Enumerator:
ForceAligned 
AsRequested 

Definition at line 200 of file Constants.h.

anonymous enum
Enumerator:
ConditionalJumpCost 

Definition at line 201 of file Constants.h.

anonymous enum
Enumerator:
InnerVectorization 
LinearVectorization 
SliceVectorization 
NoVectorization 

Definition at line 206 of file Constants.h.

anonymous enum
Enumerator:
NoUnrolling 
InnerUnrolling 
CompleteUnrolling 

Definition at line 219 of file Constants.h.

anonymous enum
Enumerator:
ColMajor 
RowMajor 
DontAlign 
AutoAlign 

Definition at line 225 of file Constants.h.

anonymous enum
Enumerator:
IsDense 
IsSparse 
NoDirectAccess 
HasDirectAccess 

Definition at line 235 of file Constants.h.

enum CornerType
Enumerator:
TopLeft 
TopRight 
BottomLeft 
BottomRight 

Definition at line 202 of file Constants.h.

Enumerator:
Vertical 
Horizontal 

Definition at line 203 of file Constants.h.

Enumerator:
NormalProduct 
CacheFriendlyProduct 
DiagonalProduct 
SparseTimeSparseProduct 
SparseTimeDenseProduct 
DenseTimeSparseProduct 

Definition at line 204 of file Constants.h.


Variable Documentation

const unsigned int ActualPacketAccessBit = 0x0

Definition at line 110 of file Constants.h.

const unsigned int Diagonal = UpperTriangular | LowerTriangular

Definition at line 197 of file Constants.h.

const int Dynamic = 10000

This value means that a quantity is not known at compile-time, and that instead the value is stored in some runtime variable.

Explanation for the choice of this value:

  • It should be positive and larger than any reasonable compile-time-fixed number of rows or columns. This allows to simplify many compile-time conditions throughout Eigen.
  • It should be smaller than the sqrt of INT_MAX. Indeed, we often multiply a number of rows with a number of columns in order to compute a number of coefficients. Even if we guard that with an "if" checking whether the values are Dynamic, we still get a compiler warning "integer overflow". So the only way to get around it would be a meta-selector. Doing this everywhere would reduce code readability and lenghten compilation times. Also, disabling compiler warnings for integer overflow, sounds like a bad idea.

If you wish to port Eigen to a platform where sizeof(int)==2, it is perfectly possible to set Dynamic to, say, 100.

Definition at line 43 of file Constants.h.

const int EiArch = EiArch_Generic

Definition at line 251 of file Constants.h.

const int EiArch_AltiVec = 0x2

Definition at line 244 of file Constants.h.

const int EiArch_Generic = 0x0

Definition at line 242 of file Constants.h.

const int EiArch_SSE = 0x1

Definition at line 243 of file Constants.h.

const unsigned int HereditaryBits
Initial value:

Definition at line 182 of file Constants.h.

const int Infinity = -1

This value means +Infinity; it is currently used only as the p parameter to MatrixBase::lpNorm<int>(). The value Infinity there means the L-infinity norm.

Definition at line 48 of file Constants.h.

const unsigned int LowerTriangular = LowerTriangularBit

Definition at line 190 of file Constants.h.

const unsigned int SelfAdjoint = SelfAdjointBit

Definition at line 192 of file Constants.h.

Definition at line 191 of file Constants.h.

Definition at line 189 of file Constants.h.

Definition at line 196 of file Constants.h.

Definition at line 195 of file Constants.h.

const unsigned int UpperTriangular = UpperTriangularBit

Definition at line 188 of file Constants.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


vcglib
Author(s): Christian Bersch
autogenerated on Fri Jan 11 09:18:53 2013