Test with stuff + Forestry potential support
This commit is contained in:
parent
5b05cf651b
commit
bd26e441cb
174 changed files with 5602 additions and 0 deletions
102
BM_src/forestry/api/genetics/IClassification.java
Normal file
102
BM_src/forestry/api/genetics/IClassification.java
Normal file
|
@ -0,0 +1,102 @@
|
|||
package forestry.api.genetics;
|
||||
|
||||
/**
|
||||
* Biological classifications from domain down to genus.
|
||||
*
|
||||
* Used by the *alyzers to display hierarchies.
|
||||
*/
|
||||
public interface IClassification {
|
||||
|
||||
public enum EnumClassLevel {
|
||||
|
||||
DOMAIN(0x777fff, true), KINGDOM(0x77c3ff), PHYLUM(0x77ffb6, true), DIVISION(0x77ffb6, true), CLASS(0x7bff77), ORDER(0xbeff77), FAMILY(0xfffd77),
|
||||
SUBFAMILY(0xfffd77), TRIBE(0xfffd77), GENUS(0xffba77);
|
||||
|
||||
private int colour;
|
||||
private boolean isDroppable;
|
||||
|
||||
private EnumClassLevel(int colour) {
|
||||
this(colour, false);
|
||||
}
|
||||
|
||||
private EnumClassLevel(int colour, boolean isDroppable) {
|
||||
this.colour = colour;
|
||||
this.isDroppable = isDroppable;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Colour to use for displaying this classification.
|
||||
*/
|
||||
public int getColour() {
|
||||
return colour;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Indicates whether display of this classification level can be ommitted in case of space constraints.
|
||||
*/
|
||||
public boolean isDroppable() {
|
||||
return isDroppable;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Level inside the full hierarchy this particular classification is located at.
|
||||
*/
|
||||
EnumClassLevel getLevel();
|
||||
|
||||
/**
|
||||
* @return Unique String identifier.
|
||||
*/
|
||||
String getUID();
|
||||
|
||||
/**
|
||||
* @return Localized branch name for user display.
|
||||
*/
|
||||
String getName();
|
||||
|
||||
/**
|
||||
* A branch approximates a "genus" in real life. Real life examples: "Micrapis", "Megapis"
|
||||
*
|
||||
* @return flavour text (may be null)
|
||||
*/
|
||||
String getScientific();
|
||||
|
||||
/**
|
||||
* @return Localized description of this branch. (May be null.)
|
||||
*/
|
||||
String getDescription();
|
||||
|
||||
/**
|
||||
* @return Member groups of this one.
|
||||
*/
|
||||
IClassification[] getMemberGroups();
|
||||
|
||||
/**
|
||||
* Adds subgroups to this group.
|
||||
*/
|
||||
void addMemberGroup(IClassification group);
|
||||
|
||||
/**
|
||||
* @return Member species of this group.
|
||||
*/
|
||||
IAlleleSpecies[] getMemberSpecies();
|
||||
|
||||
/**
|
||||
* Used by the allele registry to populate internal collection of branch members on the fly.
|
||||
*
|
||||
* @param species
|
||||
*/
|
||||
void addMemberSpecies(IAlleleSpecies species);
|
||||
|
||||
/**
|
||||
* @return Parent classification, null if this is root.
|
||||
*/
|
||||
IClassification getParent();
|
||||
|
||||
/**
|
||||
* Only used internally by the AlleleRegistry if this classification has been added to another one.
|
||||
*
|
||||
* @param parent
|
||||
*/
|
||||
void setParent(IClassification parent);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue