OpenStudio:utilities
Loading...
Searching...
No Matches
openstudio::Chain Class Reference

#include <RoofGeometry_Details.hpp>

Classes

struct  Comparer
 

Public Types

enum  ChainMode { MODE_EDGE = 0 , MODE_SPLIT = 1 , MODE_CLOSED_EDGE = 2 }
 
enum  ChainType { TYPE_EDGE = 0 , TYPE_SPLIT = 1 , TYPE_SINGLE_EDGE = 2 }
 

Public Member Functions

 Chain ()
 
 Chain (std::shared_ptr< Edge > t_oppositeEdge, std::shared_ptr< Vertex > t_nextVertex, std::vector< std::vector< std::shared_ptr< Vertex > > > &sLav)
 
 Chain (std::shared_ptr< QueueEvent > t_splitEvent)
 
 Chain (std::vector< std::shared_ptr< QueueEvent > > &t_edgeList, std::vector< std::vector< std::shared_ptr< Vertex > > > &sLav)
 
ChainMode getChainMode () const
 
std::shared_ptr< VertexgetCurrentVertex () const
 
std::shared_ptr< EdgegetNextEdge () const
 
std::shared_ptr< VertexgetNextVertex (std::vector< std::vector< std::shared_ptr< Vertex > > > &sLav) const
 
std::shared_ptr< EdgegetOppositeEdge () const
 
std::shared_ptr< EdgegetPreviousEdge () const
 
std::shared_ptr< VertexgetPreviousVertex (std::vector< std::vector< std::shared_ptr< Vertex > > > &sLav) const
 
bool operator== (const Chain &other) const
 

Public Attributes

ChainType chainType
 
bool closed = false
 
std::vector< std::shared_ptr< QueueEvent > > edgeList
 
bool split = false
 
std::shared_ptr< QueueEventsplitEvent
 

Member Enumeration Documentation

◆ ChainMode

Enumerator
MODE_EDGE 
MODE_SPLIT 
MODE_CLOSED_EDGE 

◆ ChainType

Enumerator
TYPE_EDGE 
TYPE_SPLIT 
TYPE_SINGLE_EDGE 

Constructor & Destructor Documentation

◆ Chain() [1/4]

openstudio::Chain::Chain ( )
inline

◆ Chain() [2/4]

openstudio::Chain::Chain ( std::shared_ptr< QueueEvent > t_splitEvent)
inline

◆ Chain() [3/4]

openstudio::Chain::Chain ( std::vector< std::shared_ptr< QueueEvent > > & t_edgeList,
std::vector< std::vector< std::shared_ptr< Vertex > > > & sLav )
inline

◆ Chain() [4/4]

openstudio::Chain::Chain ( std::shared_ptr< Edge > t_oppositeEdge,
std::shared_ptr< Vertex > t_nextVertex,
std::vector< std::vector< std::shared_ptr< Vertex > > > & sLav )
inline

Member Function Documentation

◆ getChainMode()

ChainMode openstudio::Chain::getChainMode ( ) const
inline

◆ getCurrentVertex()

std::shared_ptr< Vertex > openstudio::Chain::getCurrentVertex ( ) const
inline

◆ getNextEdge()

std::shared_ptr< Edge > openstudio::Chain::getNextEdge ( ) const
inline

◆ getNextVertex()

std::shared_ptr< Vertex > openstudio::Chain::getNextVertex ( std::vector< std::vector< std::shared_ptr< Vertex > > > & sLav) const
inline

◆ getOppositeEdge()

std::shared_ptr< Edge > openstudio::Chain::getOppositeEdge ( ) const
inline

◆ getPreviousEdge()

std::shared_ptr< Edge > openstudio::Chain::getPreviousEdge ( ) const
inline

◆ getPreviousVertex()

std::shared_ptr< Vertex > openstudio::Chain::getPreviousVertex ( std::vector< std::vector< std::shared_ptr< Vertex > > > & sLav) const
inline

◆ operator==()

bool openstudio::Chain::operator== ( const Chain & other) const
inline

Member Data Documentation

◆ chainType

ChainType openstudio::Chain::chainType

◆ closed

bool openstudio::Chain::closed = false

◆ edgeList

std::vector<std::shared_ptr<QueueEvent> > openstudio::Chain::edgeList

◆ split

bool openstudio::Chain::split = false

◆ splitEvent

std::shared_ptr<QueueEvent> openstudio::Chain::splitEvent