private:
- SUPERV::GraphState _State ;
+ SUPERV::GraphState _PortState ;
OutPort * _OutPort ;
OutPort * _InitialOutPort ;
+ bool _BranchOfSwitchLinked ; // For Check from Branches to EndOfSwitch links
public:
cdebug << "GraphBase::InPort::destroy " << PortName() << " "
<< NodeName() << endl ; } ;
- void State( SUPERV::GraphState aState ) {
+ void PortState( SUPERV::GraphState aPortState ) {
// cdebug << pthread_self() << " " << PortName() << " from "
// << NodeName() << " SUPERV::GraphState " << _State << " "
-// << " --> " << aState << " _EndSwitchPort "
+// << " --> " << aPortState << " _EndSwitchPort "
// << IsEndSwitch() << endl ;
- _State = aState ; } ;
- SUPERV::GraphState State() { return _State ; } ;
+ _PortState = aPortState ; } ;
+ SUPERV::GraphState PortState() { return _PortState ; } ;
OutPort * GetOutPort() {
return _OutPort ; } ;
OutPort * GetOutPort() const {
return _OutPort ; } ;
- bool IsConnected() const ;
+ const StatusOfPort PortStatus() const ;
+
+ bool IsNotConnected() const ;
+// bool IsConnected() const ;
+ bool IsPortConnected() const ;
bool IsDataConnected() const ;
+ bool IsExternConnected() const ;
+
bool AddOutPort( OutPort * anOutPort ) {
if ( _OutPort )
return false ;
_OutPort = anOutPort ;
return true ; } ;
- bool ChangeOutPort( OutPort * anOutPort ) {
- if ( _InitialOutPort == NULL ) {
- _InitialOutPort = _OutPort ;
- }
- _OutPort = anOutPort ;
- return true ; } ;
+ bool ChangeOutPort( OutPort * anOutPort ) ;
bool InitialOutPort() {
if ( _InitialOutPort ) {
_OutPort = _InitialOutPort ;
return true ;
}
return false ; } ;
- bool RemoveOutPort() {
- if ( _OutPort == NULL )
- return false ;
- _OutPort = NULL ;
- return RemoveCoords() ; } ;
+ bool RemoveOutPort() ;
+
+ bool BranchOfSwitchLinked( bool aInPortLinked ) {
+ if ( aInPortLinked && _BranchOfSwitchLinked ) {
+ return false ; // Already setted
+ }
+ _BranchOfSwitchLinked = aInPortLinked ;
+ return true ; } ;
+ bool BranchOfSwitchLinked() {
+ return _BranchOfSwitchLinked ; } ;
void StringValue(ostream & f ) const ;
ostream & operator<< (ostream &,const GraphBase::InPort &);
+ostream & operator<< (ostream &,const SUPERV::GraphState &);
+
#endif