DGtal 1.3.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Attributes
DGtal::C2x2DetComputer< T > Struct Template Reference

Aim: This concept gathers all models that are able to compute the (sign of the) determinant of a 2x2 matrix with integral entries. More...

#include <DGtal/geometry/tools/determinant/C2x2DetComputer.h>

Inheritance diagram for DGtal::C2x2DetComputer< T >:
boost::DefaultConstructible< T > boost::CopyConstructible< T > boost::Assignable< T >

Public Types

typedef T::ArgumentInteger ArgumentType
 
typedef T::ResultInteger ResultType
 

Public Member Functions

 BOOST_CONCEPT_ASSERT ((concepts::CEuclideanRing< ArgumentType >))
 
 BOOST_CONCEPT_ASSERT ((concepts::CSignedNumber< ResultType >))
 
 BOOST_CONCEPT_USAGE (C2x2DetComputer)
 

Private Attributes

myX
 
ArgumentType myA
 
ArgumentType myB
 
ArgumentType myC
 
ArgumentType myD
 
ResultType myR
 

Detailed Description

template<typename T>
struct DGtal::C2x2DetComputer< T >

Aim: This concept gathers all models that are able to compute the (sign of the) determinant of a 2x2 matrix with integral entries.

Description of concept 'C2x2DetComputer'

Invariant

The returned value, which is a model of CSignedNumber, is guaranteed to be:

Refinement of

boost::DefaultConstructible<T>, boost::CopyConstructible<T>, boost::Assignable<T>

Associated types

Notation

Valid expressions and semantics

Name Expression Type requirements Return type Precondition Semantics Post condition Complexity
full operator() r = x(a, b, c, d) ResultInteger (sign of) ad - bc model dependent
initialization x.init(a,b) void memorizes a and b constant
partial operator() r = x(c, d) ResultInteger (sign of) ad - bc model dependent

Notes

In addition to the full operator(), this concept allows another way to compute the quantity ad - bc in two steps:

Models

Simple2x2DetComputer, SimpleIncremental2x2DetComputer, AvnaimEtAl2x2DetSignComputer, Filtered2x2DetComputer

Template Parameters
Tthe type that should be a model of C2x2DetComputer.

Definition at line 107 of file C2x2DetComputer.h.

Member Typedef Documentation

◆ ArgumentType

template<typename T >
typedef T::ArgumentInteger DGtal::C2x2DetComputer< T >::ArgumentType

Definition at line 111 of file C2x2DetComputer.h.

◆ ResultType

template<typename T >
typedef T::ResultInteger DGtal::C2x2DetComputer< T >::ResultType

Definition at line 114 of file C2x2DetComputer.h.

Member Function Documentation

◆ BOOST_CONCEPT_ASSERT() [1/2]

template<typename T >
DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_ASSERT ( (concepts::CEuclideanRing< ArgumentType >)  )

◆ BOOST_CONCEPT_ASSERT() [2/2]

template<typename T >
DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_ASSERT ( (concepts::CSignedNumber< ResultType >)  )

◆ BOOST_CONCEPT_USAGE()

template<typename T >
DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_USAGE ( C2x2DetComputer< T >  )
inline

Field Documentation

◆ myA

template<typename T >
ArgumentType DGtal::C2x2DetComputer< T >::myA
private

Definition at line 126 of file C2x2DetComputer.h.

Referenced by DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_USAGE().

◆ myB

template<typename T >
ArgumentType DGtal::C2x2DetComputer< T >::myB
private

Definition at line 126 of file C2x2DetComputer.h.

Referenced by DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_USAGE().

◆ myC

template<typename T >
ArgumentType DGtal::C2x2DetComputer< T >::myC
private

Definition at line 126 of file C2x2DetComputer.h.

Referenced by DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_USAGE().

◆ myD

template<typename T >
ArgumentType DGtal::C2x2DetComputer< T >::myD
private

Definition at line 126 of file C2x2DetComputer.h.

Referenced by DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_USAGE().

◆ myR

template<typename T >
ResultType DGtal::C2x2DetComputer< T >::myR
private

Definition at line 127 of file C2x2DetComputer.h.

Referenced by DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_USAGE().

◆ myX

template<typename T >
T DGtal::C2x2DetComputer< T >::myX
private

Definition at line 125 of file C2x2DetComputer.h.

Referenced by DGtal::C2x2DetComputer< T >::BOOST_CONCEPT_USAGE().


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