/** * Creates a new <code>TLongFloatHashMap</code> instance containing * all of the entries in the map passed in. * * @param map a <tt>TLongFloatMap</tt> that will be duplicated. */ public TLongFloatHashMap( TLongFloatMap map ) { super( map.size() ); if ( map instanceof TLongFloatHashMap ) { TLongFloatHashMap hashmap = ( TLongFloatHashMap ) map; this._loadFactor = hashmap._loadFactor; this.no_entry_key = hashmap.no_entry_key; this.no_entry_value = hashmap.no_entry_value; //noinspection RedundantCast if ( this.no_entry_key != ( long ) 0 ) { Arrays.fill( _set, this.no_entry_key ); } //noinspection RedundantCast if ( this.no_entry_value != ( float ) 0 ) { Arrays.fill( _values, this.no_entry_value ); } setUp( (int) Math.ceil( DEFAULT_CAPACITY / _loadFactor ) ); } putAll( map ); }
@Override public Tuple<Collection<ExecutionLineageNode>, Collection<ChannelInstance>> evaluate( ChannelInstance[] inputs, ChannelInstance[] outputs, JavaExecutor javaExecutor, OptimizationContext.OperatorContext operatorContext) { CollectionChannel.Instance input = (CollectionChannel.Instance) inputs[0]; StreamChannel.Instance output = (StreamChannel.Instance) outputs[0]; final Collection<Tuple2<Long, Long>> edges = input.provideCollection(); final TLongFloatMap pageRanks = this.pageRank(edges); final Stream<Tuple2<Long, Float>> pageRankStream = this.stream(pageRanks); output.accept(pageRankStream); return ExecutionOperator.modelQuasiEagerExecution(inputs, outputs, operatorContext); }
/** {@inheritDoc} */ public void putAll( TLongFloatMap map ) { ensureCapacity( map.size() ); TLongFloatIterator iter = map.iterator(); while ( iter.hasNext() ) { iter.advance(); this.put( iter.key(), iter.value() ); } }
/** {@inheritDoc} */ @Override public boolean equals( Object other ) { if ( ! ( other instanceof TLongFloatMap ) ) { return false; } TLongFloatMap that = ( TLongFloatMap ) other; if ( that.size() != this.size() ) { return false; } float[] values = _values; byte[] states = _states; float this_no_entry_value = getNoEntryValue(); float that_no_entry_value = that.getNoEntryValue(); for ( int i = values.length; i-- > 0; ) { if ( states[i] == FULL ) { long key = _set[i]; float that_value = that.get( key ); float this_value = values[i]; if ( ( this_value != that_value ) && ( this_value != this_no_entry_value ) && ( that_value != that_no_entry_value ) ) { return false; } } } return true; }
public void readExternal( ObjectInput in ) throws IOException, ClassNotFoundException { // VERSION in.readByte(); // MAP _map = ( TLongFloatMap ) in.readObject(); }
/** {@inheritDoc} */ @Override public void putAll( TLongFloatMap map ) { ensureCapacity( map.size() ); TLongFloatIterator iter = map.iterator(); while ( iter.hasNext() ) { iter.advance(); this.put( iter.key(), iter.value() ); } }
/** {@inheritDoc} */ @Override public boolean equals( Object other ) { if ( ! ( other instanceof TLongFloatMap ) ) { return false; } TLongFloatMap that = ( TLongFloatMap ) other; if ( that.size() != this.size() ) { return false; } TFloatOffheapArray values = _values; TByteOffheapArray states = _states; float this_no_entry_value = getNoEntryValue(); float that_no_entry_value = that.getNoEntryValue(); for ( int i = capacity(); i-- > 0; ) { if ( states.get( i ) == FULL ) { long key = _set.get( i ); float that_value = that.get( key ); float this_value = values.get( i ); if ( ( this_value != that_value ) && ( this_value != this_no_entry_value ) && ( that_value != that_no_entry_value ) ) { return false; } } } return true; }
@Override public void readExternal( ObjectInput in ) throws IOException, ClassNotFoundException { // VERSION in.readByte(); // MAP _map = ( TLongFloatMap ) in.readObject(); }
public TLongFloatMap getMap() { return container; }
/** * Creates a wrapper that decorates the specified primitive map. * * @param map the <tt>TLongFloatMap</tt> to wrap. */ public TLongFloatMapDecorator( TLongFloatMap map ) { super(); this._map = map; }
/** * Returns a reference to the map wrapped by this decorator. * * @return the wrapped <tt>TLongFloatMap</tt> instance. */ public TLongFloatMap getMap() { return _map; }