public dbSignal getSignal(int? signalId)
{
dbSignal signal = null;
if (signalId != null)
{
String sql = "SELECT * FROM signal_master WHERE signal_id = ?";
OleDbParameter[] dbParams = {CreateParameter("@signal_id", signalId)};
OleDbDataReader reader = ExecuteSqlQuery(sql, dbParams);
if (reader != null)
{
if (reader.Read())
{
signal = new dbSignal();
signal.load(reader);
signal.ChildSignals = getChildSignals(signal.signalId);
signal.Attributes = getSignalAttributes(signal.signalId);
if (signal.parentSignalId != null)
signal.ParentSignal = getSignal( signal.parentSignalId );
}
reader.Close();
reader.Dispose();
}
}
return signal;
}