protected DataRow[] GetAvailableProcesses()
 {
     if(m_GroupRow	==	null)
         return	new	MultiXTpmDB.ProcessClassRow[0];
     MultiXTpmDB.GroupProcessClassesRow[]	GPCRows	=	m_GroupRow.GetGroupProcessClassesRows();
     MultiXTpmDB.ProcessClassRow[]	ProcessesRows	=	new	MultiXTpmDB.ProcessClassRow[m_DS.ProcessClass.Rows.Count	-	GPCRows.Length];
     int	I	=	0;
     foreach(MultiXTpmDB.ProcessClassRow	ProcessClassRow	in	m_DS.ProcessClass)
     {
         bool	bAvailable	=	true;
         foreach(MultiXTpmDB.GroupProcessClassesRow	GPCRow	in	GPCRows)
         {
             if(GPCRow.ProcessClassID	==	ProcessClassRow.ID	&&	GPCRow.GroupID	==	m_GroupID)
             {
                 bAvailable	=	false;
                 break;
             }
         }
         if(bAvailable)
         {
             ProcessesRows[I++]	=	ProcessClassRow;
         }
     }
     return	ProcessesRows;
 }
 protected DataRow[] GetProcessesDataSource()
 {
     if(m_GroupRow	==	null)
         return	new	MultiXTpmDB.GroupRow[0];
     MultiXTpmDB.GroupProcessClassesRow[]	GPCRows	=	m_GroupRow.GetGroupProcessClassesRows();
     MultiXTpmDB.ProcessClassRow[]	ProcessesRows	=	new	MultiXTpmDB.ProcessClassRow[GPCRows.Length];
     for(int	I=0;I<GPCRows.Length;I++)
     {
         ProcessesRows[I]	=	GPCRows[I].ProcessClassRow;
     }
     return	ProcessesRows;
 }