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