36 #ifndef VESSELSEGMENT_HPP_ 37 #define VESSELSEGMENT_HPP_ 41 #include <boost/enable_shared_from_this.hpp> 42 #include "SegmentFlowProperties.hpp" 43 #include "UblasVectorInclude.hpp" 44 #include "ChastePoint.hpp" 45 #include "UnitCollection.hpp" 46 #include "AbstractVesselNetworkComponent.hpp" 47 #include "DimensionalChastePoint.hpp" 50 template<
unsigned DIM>
53 template<
unsigned DIM>
61 template<
unsigned DIM>
74 std::pair<boost::shared_ptr<VesselNode<DIM> >, boost::shared_ptr<VesselNode<DIM> > >
mNodes;
165 units::quantity<unit::length>
GetLength()
const;
179 boost::shared_ptr<VesselNode<DIM> >
GetNode(
unsigned index)
const;
194 std::pair<boost::shared_ptr<VesselNode<DIM> >, boost::shared_ptr<VesselNode<DIM> > >
GetNodes()
const;
218 boost::shared_ptr<Vessel<DIM> >
GetVessel()
const;
262 boost::shared_ptr<VesselSegment<DIM> >
Shared();
VesselSegment(boost::shared_ptr< VesselNode< DIM > > pNode1, boost::shared_ptr< VesselNode< DIM > > pNode2)
void SetFlowProperties(const SegmentFlowProperties< DIM > &rFlowProperties)
std::pair< boost::shared_ptr< VesselNode< DIM > >, boost::shared_ptr< VesselNode< DIM > > > mNodes
boost::shared_ptr< VesselNode< DIM > > GetOppositeNode(boost::shared_ptr< VesselNode< DIM > > pInputNode) const
void ReplaceNode(unsigned oldNodeIndex, boost::shared_ptr< VesselNode< DIM > > pNewNode)
std::pair< boost::shared_ptr< VesselNode< DIM > >, boost::shared_ptr< VesselNode< DIM > > > GetNodes() const
boost::shared_ptr< SegmentFlowProperties< DIM > > mpFlowProperties
boost::shared_ptr< SegmentFlowProperties< DIM > > GetFlowProperties() const
c_vector< double, DIM > GetUnitTangent() const
boost::shared_ptr< VesselSegment< DIM > > Shared()
bool IsConnectedTo(boost::shared_ptr< VesselSegment< DIM > > pOtherSegment) const
DimensionalChastePoint< DIM > GetMidPoint() const
boost::weak_ptr< Vessel< DIM > > mVessel
boost::shared_ptr< Vessel< DIM > > GetVessel() const
static boost::shared_ptr< VesselSegment< DIM > > Create(boost::shared_ptr< VesselNode< DIM > > pNode1, boost::shared_ptr< VesselNode< DIM > > pNode2)
units::quantity< unit::length > GetDistance(const DimensionalChastePoint< DIM > &location) const
void AddVessel(boost::shared_ptr< Vessel< DIM > > pVessel)
boost::shared_ptr< VesselNode< DIM > > GetNode(unsigned index) const
units::quantity< unit::length > GetLength() const
DimensionalChastePoint< DIM > GetPointProjection(const DimensionalChastePoint< DIM > &location, bool projectToEnds=false) const
void CopyDataFromExistingSegment(const boost::shared_ptr< VesselSegment< DIM > > pTargetSegment)
bool HasNode(boost::shared_ptr< VesselNode< DIM > > pNode) const
std::map< std::string, double > GetOutputData()