Package jmri.jmrix.loconet.sdf
Class LoadModifier
- java.lang.Object
-
- jmri.jmrix.loconet.sdf.SdfMacro
-
- jmri.jmrix.loconet.sdf.LoadModifier
-
- All Implemented Interfaces:
SdfConstants
public class LoadModifier extends SdfMacro
Implement the LOAD_MODIFIER macro from the Digitrax sound definition language Arg1: Upper 4 bits - math modifiers FMATH_LODE et al Arg2: Arg3:
-
-
Field Summary
Fields Modifier and Type Field Description (package private) int
arg1
(package private) int
arg2
(package private) int
arg3
(package private) int
byte0
(package private) int
modType
-
Fields inherited from interface jmri.jmrix.loconet.sdf.SdfConstants
ABOVE, ABOVE_BIT, ANALOG_GAIN_MODIFY, ANALOG_PITCH_MODIFY, arg1ModCodes, arg1ModNames, arg3ModCodes, arg3ModMasks, arg3ModNames, BLEND_ALL, BLEND_CURRENT_CHNL, BLEND_FASE0, BLEND_FASE1, BLEND_FASEMASK, BLEND_GAIN0, BLEND_GAIN1, BLEND_GAINMASK, BLEND_TGTMASK, blendArg1Codes, blendArg1Masks, blendArg1Names, blendArg2Codes, blendArg2Names, blendArg3Codes, blendArg3Names, BLENDF_DSL_ACCEL0, BLENDF_DSL_ACCEL1, BLENDF_DSL_DECEL0, BLENDG_DSL_ACCEL0, BLENDG_DSL_ACCEL1, BLENDG_DSL_DECEL0, CMD_ZAP_BIT, COMP_7LSB, COMP_ALL, CV_PITCH_MODIFY, DEFAULT_GLBL_GAIN, DELAY_CV, DELAY_GLOBAL, DELAY_THIS, DITHER, DITHER_BIT, DITHERG_DIESEL, DITHERG_NONE, DITHERG_WHISTLE, ditherGCodes, ditherGNames, DITHERP_DIESEL, DITHERP_NONE, DITHERP_WHISTLE, ditherPCodes, ditherPNames, editorTriggerNames, FALSE, FCMD_MASK, FCMD_NONE, fixedCVCodes, fixedCVNames, FMATH_AND, FMATH_INTEGRATE, FMATH_LODE, FMATH_OR, FMATH_TEST_ZERO, FMATH_XOR, GCMD_MASK, GCMD_NONE, IMMED_DATA, IMMED_GAIN_MODIFY, loop_GLOBAL, loop_GLOBAL_BIT, loop_INVERT, loop_INVERT_BIT, loop_MASK, loop_STD, loop_till_cam, loop_till_DIRNOW_CHNG, loop_till_F0, loop_till_F1, loop_till_F10, loop_till_F11, loop_till_F12, loop_till_F2, loop_till_F3, loop_till_F4, loop_till_F5, loop_till_F6, loop_till_F7, loop_till_F8, loop_till_F9, loop_till_init_TRIG, loop_till_MOVING, loop_till_NEVER, loop_till_SCAT4, loop_till_SCAT5, loop_till_SCAT6, loop_till_SCAT7, loop_till_SND_ACTV11, loopCodes, loopMasks, loopNames, LOW_DITH, MAX_DITH, MAXG_DIESEL, MAXG_NONE, MAXG_STEAM, MAXG_WHISTLE, maxGCodes, maxGNames, MAXP_DIESEL, MAXP_NONE, MAXP_STEAM, MAXP_WHISTLE, maxPCodes, maxPNames, MERGE_ALL_MASK, MG0_BIT, MG1_BIT, MID_DITH, MIN_DITH, modControlCodes, modControlNames, MOVE_BIT, MTYPE_BLEND, MTYPE_GAIN, MTYPE_PITCH, MTYPE_SCATTER, MTYPE_SNDCV, MTYPE_TIME, MTYPE_WORK_IMMED, MTYPE_WORK_INDIRECT, MVFN_MASK, no_loop, NO_PREEMPT_TRIG, NO_PREEMPT_TRIG_BIT, NORMAL, NOT_TRIG, NOT_TRIG_BIT, premptCodes, premptMasks, premptNames, RUN_WHILE_TRIG, RUN_WHILE_TRIG_BIT, SCALE_2, SCALE_4, SCALE_5, SCALE_6, SCALE_8, SCALE_C, SCALE_F, SCAT_CHNL0, SCAT_CHNL1, SCAT_CHNL2, SCAT_CHNL3, SCAT_CHNL4, SCAT_CHNL5, SCAT_CHNL6, SCAT_CHNL7, SCAT_CMD_PERIOD, SCAT_CMD_PERIOD_REV, SCAT_CMD_SAWTOOTH, SCAT_CMD_SAWTOOTH_REV, SCAT_PERIOD_POLARITY_BIT, SCAT_TRIG_BASE, scatChannelCodes, scatChannelNames, scatCommandCodes, scatCommandNames, SCV_137, SCV_138, SCV_DCONFIG, SCV_DISTANCE_RATE, SCV_FREEFORM, SCV_MAIN_PITCH, SCV_MUTE_VOL, SCV_NOTCH, SCV_STGEAR, SINTEN_HIGH, SINTEN_IMMED, SINTEN_LOW, SINTEN_MID, SINTEN_MIN, SINTEN_OFF, sintenCodes, sintenNames, SK_SENS_BIT, SKATTER_INCREMENT, SKIP_GRTR, SKIP_LESS, SKIP_RSVD, SKIP_SAME, SNDCV_CONFIGA, SNDCV_CONFIGB, SNDCV_SRC, SNDCV_SRC_BIT, SNDCV_STEAM, STEAM_CAM_BIT, SUM_BIT, SUMG, T_SPD_ACC_CHNG, T_SPD_ACCEL1, T_SPD_ACCEL2, T_SPD_DEC_CHNG, T_SPD_DEC_IDLE, T_SPD_DEC_SP1, T_SPD_DEC_SP2, T_SPD_DECEL1, T_SPD_DECEL2, T_SPD_DIR_CHNG, T_SPD_IDLE, T_SPD_IDLEXIT, T_SPD_MUTE, T_SPD_RUN, T_SPD_TURNOFF, T_SPD_TURNON, T_SS_BASE, TARGET_DATA, TRIG_BSC0, TRIG_BSC1, TRIG_BSC2, TRIG_BSC3, TRIG_BSC4, TRIG_BSC5, TRIG_BSC6, TRIG_BSC7, TRIG_CAM, TRIG_DIRNOW_CHNG, TRIG_DISTANCE, TRIG_FACTORY_CVRESET, TRIG_FALSE, TRIG_IN_0, TRIG_IN_1, TRIG_IN_2, TRIG_IN_3, TRIG_IN_4, TRIG_IN_5, TRIG_IN_6, TRIG_IN_7, TRIG_IN_BASE, TRIG_MATH, TRIG_MODE_CHNG, TRIG_MOVING, TRIG_NEVER, TRIG_NOT_TRIG, TRIG_NOTCH_CHNG, TRIG_OPSPROGWR_CV, TRIG_SCAT0, TRIG_SCAT1, TRIG_SCAT2, TRIG_SCAT3, TRIG_SCAT4, TRIG_SCAT5, TRIG_SCAT6, TRIG_SCAT7, TRIG_SF0, TRIG_SF1, TRIG_SF10, TRIG_SF11, TRIG_SF12, TRIG_SF13, TRIG_SF14, TRIG_SF15, TRIG_SF16, TRIG_SF17, TRIG_SF18, TRIG_SF19, TRIG_SF2, TRIG_SF20, TRIG_SF21, TRIG_SF22, TRIG_SF23, TRIG_SF24, TRIG_SF25, TRIG_SF26, TRIG_SF27, TRIG_SF28, TRIG_SF3, TRIG_SF4, TRIG_SF5, TRIG_SF6, TRIG_SF7, TRIG_SF8, TRIG_SF9, TRIG_SND_ACTV11, TRIG_SPD_DEC, TRIG_SPD_INC, TRIG_TIME_16PPS, TRIG_TRUE, triggerCodes, triggerNames, trigLogicCodes, trigLogicMasks, trigLogicNames, TRUE, trueFalseCodes, trueFalseNames, TSPD, wavebrkCodes, wavebrkMasks, wavebrkNames, WKSB_ACEL_BIT, WKSB_ACEL_MASK, WKSB_ANALOG_BIT, WKSB_ANALOG_MASK, WKSB_DIRNOW_BIT, WKSB_DIRNOW_MASK, WKSB_MATH_BIT, WKSB_MATH_MASK, WKSB_RUN_BIT, WKSB_RUN_MASK, WKSB_SPDDELTA_BIT, WKSB_SPDDELTA_MASK, WORK_ACHNL_7E, WORK_ACHNL_7F, WORK_DISTANCE, WORK_GAIN_TRIM, WORK_GLBL_GAIN, WORK_MVOLTS, WORK_NOTCH, WORK_PEAK_SPD, WORK_PITCH_TRIM, WORK_SCATTER4, WORK_SCATTER5, WORK_SCATTER6, WORK_SCATTER7, WORK_SERVO, WORK_SKAT_FAST, WORK_SKAT_SLOW, WORK_SPEED, WORK_SPEED_DELTA, WORK_STATUS_BITS, WORK_TIMEBASE, WORK_USER_0, WORK_USER_1, WORK_USER_2, WORK_USER_3, WORK_USER_4, WORK_USER_5, WORK_USER_LINES, workRegCodes, workRegNames, workStatusBitCodes, workStatusBitNames, ZAP
-
-
Constructor Summary
Constructors Constructor Description LoadModifier(int byte0, int arg1, int arg2, int arg3)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
allInstructionString(java.lang.String indent)
Provide instructions in MPASM format, including the trailing newline and all nested instructions.(package private) java.lang.String
argVal()
Format the three bytes as simple numbers, for lack of anything better right nowint
length()
Provide number of bytes defined by this macrovoid
loadByteArray(SdfBuffer buffer)
Store into a buffer.static SdfMacro
match(SdfBuffer buff)
(package private) java.lang.String
modTypeVal()
java.lang.String
name()
Name used by the macro in the SDF definitionjava.lang.String
oneInstructionString()
Provide single instruction in MPASM format, including the trailing newline.java.lang.String
toString()
Provide a single-line simplified representation, including the trailing newline.-
Methods inherited from class jmri.jmrix.loconet.sdf.SdfMacro
decodeFlags, decodeInstruction, decodeState, getChildren, totalLength
-
-
-
-
Constructor Detail
-
LoadModifier
public LoadModifier(int byte0, int arg1, int arg2, int arg3)
-
-
Method Detail
-
name
public java.lang.String name()
Description copied from class:SdfMacro
Name used by the macro in the SDF definition
-
length
public int length()
Description copied from class:SdfMacro
Provide number of bytes defined by this macro
-
modTypeVal
java.lang.String modTypeVal()
-
argVal
java.lang.String argVal()
Format the three bytes as simple numbers, for lack of anything better right now- Returns:
- 3 digit string
-
loadByteArray
public void loadByteArray(SdfBuffer buffer)
Store into a buffer.- Overrides:
loadByteArray
in classSdfMacro
- Parameters:
buffer
- load with all children
-
toString
public java.lang.String toString()
Description copied from class:SdfMacro
Provide a single-line simplified representation, including the trailing newline. This is used e.g. in the tree format section of theEditorFrame
.
-
oneInstructionString
public java.lang.String oneInstructionString()
Description copied from class:SdfMacro
Provide single instruction in MPASM format, including the trailing newline.- Specified by:
oneInstructionString
in classSdfMacro
- Returns:
- Newline terminated string, never null
-
allInstructionString
public java.lang.String allInstructionString(java.lang.String indent)
Description copied from class:SdfMacro
Provide instructions in MPASM format, including the trailing newline and all nested instructions.- Specified by:
allInstructionString
in classSdfMacro
- Parameters:
indent
- String inserted at the start of each output line, typically some number of spaces.- Returns:
- Newline terminated string, never null
-
-