com.artemis.annotations.PackedWeaver Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of artemis-odb Show documentation
Show all versions of artemis-odb Show documentation
Fork of Artemis Entity System Framework.
package com.artemis.annotations;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import com.artemis.Component;
/**
* Transforms a {@link Component} into a {@link com.artemis.PackedComponent}. Component transformation
* takes place during the artemis
goal defined in artemis-odb-maven-plugin
* or the weave
task in artemis-odb-gradle-plugin
.
*
* @see PackedWeaver
* on the wiki.
*/
@Retention(RetentionPolicy.CLASS)
@Target(ElementType.TYPE)
@Documented
public @interface PackedWeaver {
// Note: these will be activate when weaving with sun.misc.Unsafe becomes an option.
// WorldStrategy usage() default WorldStrategy.GLOBAL_CONFIGURATION;
// DataStrategy strategy() default DataStrategy.GLOBAL_CONFIGURATION;
//
// public static enum WorldStrategy {
// /**
// * World strategy is inferred from global configuration.
// * It is only ever necessary to override this value when certain components
// * can benefit from different weaver strategies.
// *
// * Defaults to {@link WorldStrategy#SINGLE_WORLD} when no value is given.
// *
// * TODO: implement + proper example
// */
// GLOBAL_CONFIGURATION,
//
// /**
// * Component is present in multiple worlds simultaneously. Slower than {@link WorldStrategy#SINGLE_WORLD}.
// */
// MULTI_WORLD,
//
// /**
// * Only one world instance with this component is present at any one time.
// */
// SINGLE_WORLD;
// }
//
// public static enum DataStrategy {
// GLOBAL_CONFIGURATION,
// BYTEBUFFER,
// SUN_MISC_UNSAFE;
// }
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy