Progsig: Fix various issues with removing program dependencies.
Fix RemoveProgramDependencies using one parameter for both source and target, and rename the parameters to something sensible. Update program window when invalidating in RemoveProgramDependencies. Make SignalStateCondition::IsSignalValid const and add CheckSignalValid for non-const validaty checking.
This commit is contained in:
@@ -202,7 +202,8 @@ class SignalStateCondition: public SignalCondition {
|
||||
SignalStateCondition(SignalReference this_sig, TileIndex sig_tile, Trackdir sig_track);
|
||||
|
||||
void SetSignal(TileIndex tile, Trackdir track);
|
||||
bool IsSignalValid();
|
||||
bool IsSignalValid() const;
|
||||
bool CheckSignalValid();
|
||||
void Invalidate();
|
||||
|
||||
virtual bool Evaluate(SignalVM& vm);
|
||||
@@ -389,7 +390,7 @@ void FreeSignalPrograms();
|
||||
SignalState RunSignalProgram(SignalReference ref, uint num_exits, uint num_green);
|
||||
|
||||
/// Remove dependencies on signal @p on from @p by
|
||||
void RemoveProgramDependencies(SignalReference by, SignalReference on);
|
||||
void RemoveProgramDependencies(SignalReference dependency_target, SignalReference signal_to_update);
|
||||
///@}
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user