I found that in the case when one point alarms and the next points samples value is equal to the control limit, it also alarms. In SimpleLimitTest when the alarmState is true and the limittype is SPC_GREATERTHAN_LIMIT, shouldn't it do a
Whether or not a value exactly at +-3 sigma should be in alarm is a matter of personal preference (i.e. the > or >= test). Mathematically it is immaterial. The odds of a process being out of control at exactly 3 sigma are the same as (3 sigma + 10e-100). So you should take it seriously.
That being said, the software includes a flag (ComparisonOperator) that can be set on a per control limit basis which will force the comparison test to be either > or >= for the +sigmas and < and <= for the -sigmas. The default value is true, set to false to force a > evaluation for + sigmas, and a < evaluation for - sigmas.