private void setupBundleHeaders ( ArrayList < String > names , int [ ] targ , TypeInformation [ ] etyp , int [ ] dimsize , MultipleObjectsBundle bundle , boolean sparse ) { for ( int in = 0 , out = 0 ; in < targ . length ; out ++ ) { int nin = in + 1 ; for ( ; nin < targ . length ; nin ++ ) { if ( targ [ nin ] != targ [ in ] ) { break ; } } if ( TypeUtil . NUMBER_VECTOR_FIELD . equals ( etyp [ out ] ) ) { String [ ] labels = new String [ dimsize [ out ] ] ; // Collect labels: for ( int i = 0 ; i < dimsize [ out ] ; i ++ ) { labels [ i ] = names . get ( out + i ) ; } if ( ! sparse ) { VectorFieldTypeInformation < DoubleVector > type = new VectorFieldTypeInformation <> ( DoubleVector . FACTORY , dimsize [ out ] , labels ) ; bundle . appendColumn ( type , new ArrayList < DoubleVector > ( ) ) ; } else { VectorFieldTypeInformation < SparseDoubleVector > type = new VectorFieldTypeInformation <> ( SparseDoubleVector . FACTORY , dimsize [ out ] , labels ) ; bundle . appendColumn ( type , new ArrayList < SparseDoubleVector > ( ) ) ; } } else if ( TypeUtil . LABELLIST . equals ( etyp [ out ] ) ) { StringBuilder label = new StringBuilder ( names . get ( out ) ) ; for ( int i = 1 ; i < dimsize [ out ] ; i ++ ) { label . append ( ' ' ) . append ( names . get ( out + i ) ) ; } bundle . appendColumn ( new SimpleTypeInformation <> ( LabelList . class , label . toString ( ) ) , new ArrayList < LabelList > ( ) ) ; } else if ( TypeUtil . EXTERNALID . equals ( etyp [ out ] ) ) { bundle . appendColumn ( new SimpleTypeInformation <> ( ExternalID . class , names . get ( out ) ) , new ArrayList < ExternalID > ( ) ) ; } else if ( TypeUtil . CLASSLABEL . equals ( etyp [ out ] ) ) { bundle . appendColumn ( new SimpleTypeInformation <> ( ClassLabel . class , names . get ( out ) ) , new ArrayList < ClassLabel > ( ) ) ; } else { throw new AbortException ( "Unsupported type for column " + in + "->" + out + ": " + ( ( etyp [ out ] != null ) ? etyp [ out ] . toString ( ) : "null" ) ) ; } assert ( out == bundle . metaLength ( ) - 1 ) ; in = nin ; } }
Setup the headers for the object bundle .