protected DBIDs computeSubspaceForGene ( short [ ] gene , ArrayList < ArrayList < DBIDs > > ranges ) { HashSetModifiableDBIDs m = null ; // intersect all present restrictions for ( int i = 0 ; i < gene . length ; i ++ ) { if ( gene [ i ] != DONT_CARE ) { DBIDs current = ranges . get ( i ) . get ( gene [ i ] - GENE_OFFSET ) ; if ( m == null ) { m = DBIDUtil . newHashSet ( current ) ; } else { m . retainAll ( current ) ; } } } assert ( m != null ) : "All genes set to '*', should not happen!" ; return m ; }
Get the DBIDs in the current subspace .