Data update
This commit is contained in:
parent
61b93a2cd1
commit
5af6d93694
858 changed files with 20572 additions and 2082 deletions
|
|
@ -0,0 +1,74 @@
|
|||
public final class MemoryLayoutOfDataStructure {
|
||||
|
||||
public static void main(String[] aArgs) {
|
||||
RS232Pins9 plug = new RS232Pins9();
|
||||
System.out.println(plug.getPin("receivedData"));
|
||||
plug.setPin(2, Status.ON);
|
||||
System.out.println(plug.getPin("receivedData"));
|
||||
plug.setPin("signalGround", Status.ON);
|
||||
plug.displayPinStatus();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
enum Status { OFF, ON }
|
||||
|
||||
final class RS232Pins9 {
|
||||
|
||||
public Status getPin(int aPinNumber) {
|
||||
for ( Pin pin : Pin.values() ) {
|
||||
if ( pin.pinNumber == aPinNumber ) {
|
||||
return pin.status;
|
||||
}
|
||||
}
|
||||
throw new IllegalArgumentException("Unknown pin number: " + aPinNumber);
|
||||
}
|
||||
|
||||
public Status getPin(String aName) {
|
||||
for ( Pin pin : Pin.values() ) {
|
||||
if ( pin.name() == aName ) {
|
||||
return pin.status;
|
||||
}
|
||||
}
|
||||
throw new IllegalArgumentException("Unknown pin name: " + aName);
|
||||
}
|
||||
|
||||
public void setPin(int aPinNumber, Status aStatus) {
|
||||
for ( Pin pin : Pin.values() ) {
|
||||
if ( pin.pinNumber == aPinNumber ) {
|
||||
pin.status = aStatus;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void setPin(String aName, Status aStatus) {
|
||||
for ( Pin pin : Pin.values() ) {
|
||||
if ( pin.name() == aName ) {
|
||||
pin.status = aStatus;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void displayPinStatus() {
|
||||
for ( Pin pin : Pin.values() ) {
|
||||
System.out.println(String.format("%-29s%s", pin.name() + " has status ", pin.status));
|
||||
}
|
||||
}
|
||||
|
||||
private enum Pin {
|
||||
|
||||
carrierDetect(1, Status.OFF), receivedData(2, Status.OFF), transmittedData(3, Status.OFF),
|
||||
dataTerminalReady(4, Status.OFF), signalGround(5, Status.OFF), dataSetReady(6, Status.OFF),
|
||||
requestToSend(7, Status.OFF), clearToSend(8, Status.OFF), ringIndicator(9, Status.OFF);
|
||||
|
||||
private Pin(int aPinNumber, Status aStatus) {
|
||||
pinNumber = aPinNumber;
|
||||
status = aStatus;
|
||||
}
|
||||
|
||||
private int pinNumber;
|
||||
private Status status;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue