/* Copyright (C) 2012 JabRef contributors.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
package net.sf.jabref.imports;
/**
* Container class for lists with keywords where the case should be kept independent of bibstyle
*
*/
public class CaseKeeperList {
// Common words in IEEE Xplore that should always be in the given case
public String[] wordListIEEEXplore = new String[]{
"1-D",
"1D",
"2-D",
"2D",
"3-D",
"3D",
"3G",
"3GPP",
"4-D",
"4D",
"4G",
"4H",
"6H",
"A/D",
"ACM",
"AC",
"ADC",
"ADI",
"ADSL",
"ADP",
"ADPLL",
"AES",
"AFE",
"AGC",
"AI",
"AIQ",
"ALU",
"AMPS",
"AM",
"AND",
"ANOVA",
"ANSI",
"API",
"ARMA",
"ARQ",
"ASIC",
"ASIP",
"ASK",
"ATE",
"ATM",
"ATP",
"ATPG",
"ATSC",
"ATV",
"AVC",
"AWGN",
"Alamouti",
"AlGaAs",
"AlGaN",
"AlN",
"Altera",
"BCD",
"BCH",
"BCJR",
"BDD",
"BER",
"BGA",
"BIBO",
"BIST",
"BJT",
"BLAST",
"BPSK",
"BP",
"BT",
"Baum",
"Bayes",
"Berlekamp",
"Bessel",
"BiCMOS",
"Blackwell",
"Bluetooth",
"Booth",
"Bose",
"Bragg",
"Butterworth",
"CAD",
"CAS",
"CATV",
"CBR",
"CCD",
"CDMA",
"CD",
"CDC",
"CDR",
"CERN",
"CFAR",
"CIC",
"CLB",
"CMFB",
"CMOS",
"CMRR",
"CMS",
"CNN",
"CO2",
"CORDIC",
"COTS",
"CP",
"CPE",
"CPLD",
"CPU",
"CRC",
"CRM",
"CSD",
"CSE",
"CSIT",
"CSI",
"CSMA",
"CSP",
"CT",
"CUDA",
"CW",
"Carlo",
"Cauer",
"Chebychev",
"Chebyshev",
"Chien",
"Cooley",
"D/A",
"DAB",
"DAC",
"DBMS",
"DCT",
"DC",
"DDC",
"DDFS",
"DDR",
"DDSM",
"DDS",
"DDoS",
"DECT",
"DEM",
"DFE",
"DFT",
"DGPS",
"DHT",
"DIMM",
"DLL",
"DMT",
"DNA",
"DNL",
"DOA",
"DOCSIS",
"DOI",
"DPSK",
"DRAM",
"DRM",
"DS",
"DSP",
"DST",
"DTMB",
"DTTB",
"DTV",
"DUC",
"DVB-C",
"DVB-H",
"DVB-S",
"DVB-T",
"DVB",
"DVD",
"DVFS",
"DVI",
"DWT",
"Dadda",
"Daubechies",
"Doppler",
"ECC",
"ECG",
"ECL",
"EDGE",
"EEG",
"EJB",
"EKF",
"EKG",
"EMC",
"EMG",
"EMI",
"ENOB",
"EPROM",
"ESD",
"ESPRIT",
"EV",
"EVM",
"Einstein",
"Euclid",
"Euler",
"FBAR",
"FDE",
"FDI",
"FDTD",
"FEC",
"FEM",
"FER",
"FET",
"FFT",
"FIFO",
"FIR",
"FMCW",
"FM",
"FP",
"FPAA",
"FPGA",
"FPU",
"FRM",
"FSK",
"FSM",
"FTTC",
"FTTH",
"Farrow",
"FinFET",
"Fokker",
"Fourier",
"GALS",
"GCM",
"GF",
"GHz",
"GIS",
"GM",
"GMD",
"GNSS",
"GNU",
"GPGPU",
"GPRS",
"GPS",
"GPU",
"GSM",
"GSPS",
"GS",
"GaAs",
"GaN",
"Gabor",
"Galileo",
"Galois",
"Gauss",
"Gb",
"GeV",
"Gram-Schmidt",
"H.264",
"HARQ",
"HBM",
"HBT",
"HDMI",
"HDTV",
"HD",
"HDD",
"HDI",
"HDL",
"HEMT",
"HEVC",
"HF",
"HMM",
"HPC",
"HRV",
"HSPA",
"HSDPA",
"HVAC",
"HVDC",
"HW",
"Haar",
"Hadamard",
"Hamming",
"Hartley",
"Hermit", // Hermitian, Hermite, Hermit
"Hilbert",
"Hz",
"I-V",
"I/O",
"I/Q",
"IBM",
"ICA",
"IC",
"ICI",
"ICT",
"IDCT",
"IDFT",
"IEC",
"IEEE",
"IFFT",
"IFIR",
"IF",
"IGBT",
"II-VI",
"II/VI",
"III-V",
"III/V",
"IIR",
"ILP",
"IMDCT",
"IMDST",
"IMT-A", // IMT-Advanced
"IMU",
"INL",
"IO",
"IPTV",
"IP",
"IQ",
"IR",
"IS-95",
"ISDN",
"ISI",
"ISM",
"ISO",
"ISS",
"InGaAs",
"InGaN",
"InP",
"InSAR",
"J2EE",
"JEDEC",
"JFET",
"JIT",
"JPEG",
"JTAG",
"Josephson",
"Kalman",
"Karatsuba",
"LAN",
"LC",
"LCD",
"LCG",
"LDA",
"LDD",
"LDI",
"LDPC",
"LED",
"LFSR",
"LHC",
"LIDAR",
"LiDAR",
"LLC",
"LLR",
"LMDS",
"LMI",
"LMS",
"LNA",
"LNS",
"LS",
"LSB",
"LTCC",
"LTE-A",
"LTE",
"LTI",
"LUT",
"LVDC",
"LVDS",
"LZW",
"Laplace",
"Lempel",
"Lyapunov",
"MAC",
"MANET",
"MAP",
"MASH",
"MBE",
"MC",
"MCE",
"MCM",
"MCMC",
"MCU",
"MDCT",
"MDST",
"MEMS",
"MESFET",
"MHz",
"MILP",
"MIMO",
"MISO",
"MIT",
"ML",
"MMIC",
"MMS",
"MMSE",
"MOSFET",
"MOS",
"MP3",
"MPC",
"MPEG",
"MPI",
"MPPC",
"MPSoC",
"MQW",
"MRC",
"MRI",
"MRTD",
"MSB",
"MSD",
"MSE",
"MSPS",
"MS",
"MTCMOS",
"MTD",
"MTI",
"MV",
"MVC",
"Maclaurin",
"Manchester",
"Markov",
"Massey",
"Maxwell",
"Mb",
"McClellan",
"MeV",
"Miller",
"Monte",
"Montgomery",
"Msps",
"NAND",
"NOR",
"NF",
"NMOS",
"NRZ",
"NTSC",
"Newton",
"NoC",
"Nyquist",
"OCR",
"OFDMA",
"OFDM",
"OLED",
"OOP",
"OR",
"OSR",
"OTA-C",
"OTA",
"Ofman",
"P2P",
"PAL",
"PAM",
"PAPR",
"PBGA",
"PCA",
"PCB",
"PCI",
"PCM",
"PCMCIA",
"PC",
"PDP",
"PET",
"PFA",
"PHD",
"PHY",
"PIC",
"PID",
"PIN",
"PLC",
"PLL",
"PMOS",
"PN",
"PON",
"POTS",
"PQFP",
"PRPG",
"PSK",
"PSNR",
"PSO",
"PSRR",
"PV",
"PWB",
"PWM",
"Parks-McClellan", // Only Parks will give lots of incorrect hits
"Pb",
"Planck",
"PowerPC",
"QAM",
"QC-LDPC",
"QCA",
"QDI",
"QFP",
"QMF",
"QNN",
"QO",
"QP",
"QPSK",
"QR",
"QRD",
"QRS",
"QoS",
"RAD",
"RAKE",
"RAM",
"RBF",
"RC",
"RCS",
"RFDAC",
"RFE",
"RFIC",
"RFID",
"RF",
"RFS",
"RISC",
"RLC",
"RLS",
"RMS",
"RNS",
"ROM",
"RRC",
"RS",
"RSA",
"RT",
"RTL",
"RTOS",
"RX",
"RZ",
"Rao",
"Raphson",
"Rayleigh",
"Reed",
"Remez",
"Riccati",
"SAR",
"SAT",
"SAW",
"SC",
"SDF",
"SDH",
"SDP",
"SDRAM",
"SDR",
"SDRE",
"SEU",
"SFDR",
"SIC",
"SIMD",
"SIMO",
"SINAD",
"SINR",
"SINS",
"SISO",
"SLAM",
"SMD",
"SME",
"SMS",
"SNDR",
"SNR",
"SOCP",
"SOI",
"SONET",
"SPS",
"SPT",
"SRAM",
"SQL",
"SQNR",
"STBC",
"SVD",
"SVM",
"SW",
"Schottky",
"SerDes",
"Shannon",
"SiC",
"SiGe",
"SoC",
"SoP",
"Solomon",
"SystemC",
"TCP",
"TDM",
"TDMA",
"TDS",
"TETRA",
"TFT",
"THD",
"THz",
"TLM",
"TLP",
"TPG",
"TQFP",
"TSOP",
"TSPC",
"TTL",
"TV",
"TX",
"Taylor",
"Toeplitz",
"Tukey",
"UAV",
"UHF",
"UKF",
"ULSI",
"UML",
"UMTS",
"UPS",
"USB",
"USRP",
"UV",
"UWB",
"V-BLAST",
"VBLAST",
"VBR",
"VCO",
"VDD",
"VDSL",
"VGA",
"VHDL",
"VHF",
"VLIW",
"VLSI",
"VOD",
"VQ",
"VSB",
"VTOL",
"Vdd",
"Verilog-AMS",
"Verilog-A",
"Verilog",
"Viterbi",
"VoD",
"VoIP",
"Volterra",
"WCDMA",
"WDF",
"WDM",
"WFTA",
"WLAN",
"WLS",
"WPAN",
"WSN",
"WWW",
"Wallace",
"Watt",
"Welch",
"WiFi",
"WiMAX",
"Wiener",
"Winograd",
"XML",
"XNOR",
"XOR",
"Xilinx",
"ZCS",
"ZF",
"ZVS",
"ZigBee",
"Ziv",
"ZnO",
"dB",
"eV",
"kA",
"keV",
"kHz",
"kS",
"kV",
"kW",
"mA",
"mJ",
"mW",
"mV",
"nJ",
"nV",
"nW",
"pJ",
"pV",
"pW",
"xDSL"
};
// List of all keyword lists
private String[][] allLists = new String[][] {
wordListIEEEXplore
};
public CaseKeeperList () {
};
/* Return all lists concatenated
* Can be done faster once deciding on Java 6.0
* see: http://stackoverflow.com/questions/80476/how-to-concatenate-two-arrays-in-java
*/
public String[] getAll() {
int lengh = 0;
for (String[] array : allLists) {
lengh += array.length;
}
String[] result = new String[lengh];
int pos = 0;
for (String[] array : allLists) {
for (String element : array) {
result[pos] = element;
pos++;
}
}
return result;
}
}