本文整理了Java中gnu.trove.map.TIntIntMap.iterator()
方法的一些代码示例,展示了TIntIntMap.iterator()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。TIntIntMap.iterator()
方法的具体详情如下:
包路径:gnu.trove.map.TIntIntMap
类名称: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);
}
内容来源于网络,如有侵权,请联系作者删除!