aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConductor.java
blob: e285c6f0e33b5817eadcf4611c916f379b29e07e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package gregtech.api.interfaces.tileentity;

import gregtech.api.enums.Materials;

/**
 * Informative Class for Cables. Not used for now.
 * <p/>
 * Not all Data might be reliable. This is just for Information sake.
 */
public interface IEnergyConductor extends IEnergyConnected, IHasWorldObjectAndCoords {

    /**
     * @return if this is actually a Cable. (you must check this)
     */
    boolean isConductor();

    /**
     * @return the maximum Voltage of the Cable.
     */
    long getMaxVoltage();

    /**
     * @return the maximum Amperage of the Cable, per Wire.
     */
    long getMaxAmperage();

    /**
     * @return the Loss of the Cable, per Meter.
     */
    long getLossPerMeter();

    /**
     * @return the Material the Cable consists of. (may return Materials._NULL)
     */
    Materials getCableMaterial();

    /**
     * @return the Material the Cable Insulation consists of. (may return Materials._NULL)
     */
    Materials getInsulationMaterial();
}