58 lines
1.5 KiB
Dart
58 lines
1.5 KiB
Dart
/// Represents the functional branch/specialty of a military unit or position.
|
|
///
|
|
/// Based on U.S. Army 2026 doctrine functional branch designations.
|
|
enum DoctrinalBranch {
|
|
infantry,
|
|
medical,
|
|
fires,
|
|
signal,
|
|
cyberEw,
|
|
aviation,
|
|
logistics,
|
|
engineer;
|
|
|
|
/// Returns a human-readable display name for this branch.
|
|
String get displayName {
|
|
switch (this) {
|
|
case DoctrinalBranch.infantry:
|
|
return 'Infantry & Maneuver';
|
|
case DoctrinalBranch.medical:
|
|
return 'Medical (CMF 68)';
|
|
case DoctrinalBranch.fires:
|
|
return 'Field Artillery (CMF 13)';
|
|
case DoctrinalBranch.signal:
|
|
return 'Signal (CMF 25)';
|
|
case DoctrinalBranch.cyberEw:
|
|
return 'Cyber/EW (CMF 17)';
|
|
case DoctrinalBranch.aviation:
|
|
return 'Aviation';
|
|
case DoctrinalBranch.logistics:
|
|
return 'Logistics (CMF 91/92)';
|
|
case DoctrinalBranch.engineer:
|
|
return 'Engineer (CMF 12)';
|
|
}
|
|
}
|
|
|
|
/// Returns the short branch abbreviation.
|
|
String get abbreviation {
|
|
switch (this) {
|
|
case DoctrinalBranch.infantry:
|
|
return 'IN';
|
|
case DoctrinalBranch.medical:
|
|
return 'MC';
|
|
case DoctrinalBranch.fires:
|
|
return 'FA';
|
|
case DoctrinalBranch.signal:
|
|
return 'SC';
|
|
case DoctrinalBranch.cyberEw:
|
|
return 'CY';
|
|
case DoctrinalBranch.aviation:
|
|
return 'AV';
|
|
case DoctrinalBranch.logistics:
|
|
return 'LG';
|
|
case DoctrinalBranch.engineer:
|
|
return 'EN';
|
|
}
|
|
}
|
|
}
|