cgma
DagType Class Reference

#include <DagType.hpp>

List of all members.

Public Types

enum  FunctionalType { BasicTopologyEntity_TYPE = 0, SenseEntity_TYPE = 1, GroupingEntity_TYPE = 2 }

Public Member Functions

 DagType ()
 DagType (int dimensionIn, FunctionalType func)
int dimension () const
FunctionalType functional_type () const
bool is_valid () const
DagType parent () const
bool operator== (DagType other) const
bool operator!= (DagType other) const
bool operator<= (DagType other) const
bool operator>= (DagType other) const
bool operator< (DagType other) const
bool operator> (DagType other) const
DagType operator++ ()
DagType operator-- ()
DagType operator++ (int)
DagType operator-- (int)
DagType operator+= (int i)
DagType operator-= (int i)
DagType operator+ (int i) const
DagType operator- (int i) const
 operator bool () const
int operator- (DagType other) const

Static Public Member Functions

static DagType body_type ()
static DagType co_volume_type ()
static DagType ref_volume_type ()
static DagType shell_type ()
static DagType co_face_type ()
static DagType ref_face_type ()
static DagType loop_type ()
static DagType co_edge_type ()
static DagType ref_edge_type ()
static DagType chain_type ()
static DagType co_vertex_type ()
static DagType ref_vertex_type ()
static DagType invalid_type ()

Private Member Functions

 DagType (int value)

Private Attributes

int intType

Detailed Description

Definition at line 6 of file DagType.hpp.


Member Enumeration Documentation

Enumerator:
BasicTopologyEntity_TYPE 
SenseEntity_TYPE 
GroupingEntity_TYPE 

Definition at line 11 of file DagType.hpp.


Constructor & Destructor Documentation

DagType::DagType ( ) [inline]

Definition at line 19 of file DagType.hpp.

      : intType(-1)
      {}
DagType::DagType ( int  dimensionIn,
FunctionalType  func 
) [inline]

Definition at line 30 of file DagType.hpp.

      : intType( 3 * dimensionIn + func ) 
      { }
DagType::DagType ( int  value) [inline, explicit, private]

Definition at line 159 of file DagType.hpp.

      : intType( value ) {}

Member Function Documentation

static DagType DagType::body_type ( ) [inline, static]

Definition at line 144 of file DagType.hpp.

static DagType DagType::chain_type ( ) [inline, static]

Definition at line 153 of file DagType.hpp.

static DagType DagType::co_edge_type ( ) [inline, static]

Definition at line 151 of file DagType.hpp.

static DagType DagType::co_face_type ( ) [inline, static]

Definition at line 148 of file DagType.hpp.

static DagType DagType::co_vertex_type ( ) [inline, static]

Definition at line 154 of file DagType.hpp.

static DagType DagType::co_volume_type ( ) [inline, static]

Definition at line 145 of file DagType.hpp.

int DagType::dimension ( ) const [inline]

Definition at line 39 of file DagType.hpp.

      { return intType / 3; }

Definition at line 46 of file DagType.hpp.

      { return (FunctionalType)(intType % 3); }
static DagType DagType::invalid_type ( ) [inline, static]

Definition at line 156 of file DagType.hpp.

{return DagType(-1);}
bool DagType::is_valid ( ) const [inline]

Definition at line 56 of file DagType.hpp.

      { 
        const unsigned bodyType = 11;
        return (unsigned)intType <= bodyType;
      }
static DagType DagType::loop_type ( ) [inline, static]

Definition at line 150 of file DagType.hpp.

DagType::operator bool ( ) const [inline]

Definition at line 128 of file DagType.hpp.

      { return is_valid(); }
bool DagType::operator!= ( DagType  other) const [inline]

Definition at line 76 of file DagType.hpp.

      { return intType != other.intType; }
DagType DagType::operator+ ( int  i) const [inline]

Definition at line 118 of file DagType.hpp.

      { return DagType(intType + i); }
DagType DagType::operator++ ( ) [inline]

Definition at line 100 of file DagType.hpp.

      { return DagType(++intType); }
DagType DagType::operator++ ( int  ) [inline]

Definition at line 106 of file DagType.hpp.

      { return DagType(intType++); }
DagType DagType::operator+= ( int  i) [inline]

Definition at line 112 of file DagType.hpp.

      { return DagType(intType += i); }
DagType DagType::operator- ( int  i) const [inline]

Definition at line 121 of file DagType.hpp.

      { return DagType(intType - i); }
int DagType::operator- ( DagType  other) const [inline]

Definition at line 140 of file DagType.hpp.

      { return intType - other.intType; } 
DagType DagType::operator-- ( ) [inline]

Definition at line 103 of file DagType.hpp.

      { return DagType(--intType); }
DagType DagType::operator-- ( int  ) [inline]

Definition at line 109 of file DagType.hpp.

      { return DagType(intType--); }
DagType DagType::operator-= ( int  i) [inline]

Definition at line 115 of file DagType.hpp.

      { return DagType(intType -= i); }
bool DagType::operator< ( DagType  other) const [inline]

Definition at line 85 of file DagType.hpp.

      { return intType < other.intType; }
bool DagType::operator<= ( DagType  other) const [inline]

Definition at line 79 of file DagType.hpp.

      { return intType <= other.intType; }
bool DagType::operator== ( DagType  other) const [inline]

Definition at line 73 of file DagType.hpp.

      { return intType == other.intType; }
bool DagType::operator> ( DagType  other) const [inline]

Definition at line 88 of file DagType.hpp.

      { return intType > other.intType; }
bool DagType::operator>= ( DagType  other) const [inline]

Definition at line 82 of file DagType.hpp.

      { return intType >= other.intType; }
DagType DagType::parent ( ) const [inline]

Definition at line 63 of file DagType.hpp.

      { return DagType(intType + 1); }
static DagType DagType::ref_edge_type ( ) [inline, static]

Definition at line 152 of file DagType.hpp.

static DagType DagType::ref_face_type ( ) [inline, static]

Definition at line 149 of file DagType.hpp.

static DagType DagType::ref_vertex_type ( ) [inline, static]

Definition at line 155 of file DagType.hpp.

static DagType DagType::ref_volume_type ( ) [inline, static]

Definition at line 146 of file DagType.hpp.

static DagType DagType::shell_type ( ) [inline, static]

Definition at line 147 of file DagType.hpp.


Member Data Documentation

int DagType::intType [private]

Definition at line 162 of file DagType.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines