gnu.trove.map.TIntIntMap.iterator()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(9.0k)|赞(0)|评价(0)|浏览(81)

本文整理了Java中gnu.trove.map.TIntIntMap.iterator()方法的一些代码示例,展示了TIntIntMap.iterator()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。TIntIntMap.iterator()方法的具体详情如下:
包路径:gnu.trove.map.TIntIntMap
类名称:TIntIntMap
方法名:iterator

TIntIntMap.iterator介绍

暂无

代码示例

代码示例来源:origin: alibaba/mdrill

public TIntIntIterator iterator() {
  return m.iterator(); // Must be manually synched by user!
}

代码示例来源:origin: alibaba/mdrill

public TIntIntIterator iterator() {
  return new TIntIntIterator() {
    TIntIntIterator iter = m.iterator();
    public int key() { return iter.key(); }
    public int value() { return iter.value(); }
    public void advance() { iter.advance(); }
    public boolean hasNext() { return iter.hasNext(); }
    public int setValue( int val ) { throw new UnsupportedOperationException(); }
    public void remove() { throw new UnsupportedOperationException(); }
  };
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
  public void run() {
    try {
      GameThread.synch(() -> {
        logger.debug("Disposing material {}.", urn);
        TIntIntIterator it = shaderPrograms.iterator();
        while (it.hasNext()) {
          it.advance();
          GL20.glDeleteProgram(it.value());
        }
        shaderPrograms.clear();
      });
    } catch (InterruptedException e) {
      logger.error("Failed to dispose {}", urn, e);
    }
  }
}

代码示例来源:origin: opentripplanner/OpenTripPlanner

public int mean() {
  long sum = 0;
  for (TIntIntIterator it = bins.iterator(); it.hasNext();) {
    it.advance();
    sum += it.key() * it.value();
  }
  return (int) (sum / count);
}

代码示例来源:origin: MovingBlocks/Terasology

private void disposeData() {
    TIntIntIterator it = fragmentPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glDeleteShader(it.value());
    }
    fragmentPrograms.clear();
    it = vertexPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glDeleteShader(it.value());
    }
    vertexPrograms.clear();
  }
}

代码示例来源:origin: alibaba/mdrill

/** {@inheritDoc} */
public void putAll( TIntIntMap map ) {
  ensureCapacity( map.size() );
  TIntIntIterator iter = map.iterator();
  while ( iter.hasNext() ) {
    iter.advance();
    this.put( iter.key(), iter.value() );
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setFloat2(String desc, FloatBuffer buffer, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform2(id, buffer);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform2(id, buffer);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setFloat4(String desc, float f1, float f2, float f3, float f4, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform4f(id, f1, f2, f3, f4);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform4f(id, f1, f2, f3, f4);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setInt(String desc, int i, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform1i(id, i);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform1i(id, i);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setFloat3(String desc, float f1, float f2, float f3, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform3f(id, f1, f2, f3);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform3f(id, f1, f2, f3);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setMatrix4(String desc, FloatBuffer value, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniformMatrix4(id, false, value);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniformMatrix4(id, false, value);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setBoolean(String desc, boolean value, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform1i(id, value ? 1 : 0);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform1i(id, value ? 1 : 0);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setFloat(String desc, float f, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform1f(id, f);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform1f(id, f);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setFloat1(String desc, FloatBuffer buffer, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform1(id, buffer);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform1(id, buffer);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setFloat2(String desc, float f1, float f2, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform2f(id, f1, f2);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform2f(id, f1, f2);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setFloat3(String desc, FloatBuffer buffer, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform3(id, buffer);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform3(id, buffer);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setFloat4(String desc, FloatBuffer buffer, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniform4(id, buffer);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniform4(id, buffer);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setMatrix3(String desc, FloatBuffer value, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniformMatrix3(id, false, value);
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniformMatrix3(id, false, value);
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void setMatrix4(String desc, Matrix4f value, boolean currentOnly) {
  if (isDisposed()) {
    return;
  }
  if (currentOnly) {
    enable();
    int id = getUniformLocation(getActiveShaderProgramId(), desc);
    GL20.glUniformMatrix4(id, false, MatrixUtils.matrixToFloatBuffer(value));
  } else {
    TIntIntIterator it = disposalAction.shaderPrograms.iterator();
    while (it.hasNext()) {
      it.advance();
      GL20.glUseProgram(it.value());
      int id = getUniformLocation(it.value(), desc);
      GL20.glUniformMatrix4(id, false, MatrixUtils.matrixToFloatBuffer(value));
    }
    restoreStateAfterUniformsSet();
  }
}

代码示例来源:origin: MovingBlocks/Terasology

@Override
public void recompile() {
  TIntIntIterator it = disposalAction.shaderPrograms.iterator();
  while (it.hasNext()) {
    it.advance();
    GL20.glDeleteProgram(it.value());
  }
  disposalAction.shaderPrograms.clear();
  uniformLocationMap.clear();
  bindMap.clear();
  disposalAction.shaderPrograms.put(0, shader.linkShaderProgram(0));
  for (Set<ShaderProgramFeature> permutation : Sets.powerSet(shader.getAvailableFeatures())) {
    int featureMask = ShaderProgramFeature.getBitset(permutation);
    disposalAction.shaderPrograms.put(featureMask, shader.linkShaderProgram(featureMask));
  }
  //resolves #966
  //Some of the uniforms are not updated constantly between frames
  //this function will rebind any uniforms that are not bound
  rebindVariables(materialData);
}

相关文章