last works on Force State Management ...
This commit is contained in:
@@ -2061,16 +2061,13 @@ struct X121SignalGenerator
|
||||
}
|
||||
|
||||
//
|
||||
bool IsConditionsValidForLong(
|
||||
X121SetupConditions &conditions, // Conditions
|
||||
int verification = 4 // Number of Verifications
|
||||
// Count Number of Long Validations ...
|
||||
int CountLongValidations(
|
||||
X121SetupConditions &conditions // Conditions
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
int signs = 0;
|
||||
int result = 0;
|
||||
|
||||
//
|
||||
// XTD ...
|
||||
@@ -2082,7 +2079,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isTDPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2100,7 +2097,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isHKPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2115,7 +2112,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isCHEPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2142,7 +2139,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isICHPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2155,7 +2152,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isSTRPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2168,7 +2165,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isMRBPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2182,7 +2179,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isVLMPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2195,7 +2192,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isSSLCPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2210,7 +2207,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isHULLPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2224,7 +2221,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isADXTDPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2252,13 +2249,31 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isMATDPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
bool IsConditionsValidForLong(
|
||||
X121SetupConditions &conditions, // Conditions
|
||||
int verifications = 4 // Number of Verifications
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
int signs = CountLongValidations(conditions);
|
||||
|
||||
//
|
||||
result =
|
||||
//
|
||||
signs > verification
|
||||
verifications <= 0
|
||||
? signs > 0
|
||||
: signs >= verifications
|
||||
//
|
||||
;
|
||||
|
||||
@@ -2303,16 +2318,12 @@ struct X121SignalGenerator
|
||||
}
|
||||
|
||||
//
|
||||
bool IsConditionsValidForShort(
|
||||
X121SetupConditions &conditions, // Conditions
|
||||
int verification = 4 // Number of Verifications
|
||||
int CountShortValidations(
|
||||
X121SetupConditions &conditions // Conditions
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
int signs = 0;
|
||||
int result = 0;
|
||||
|
||||
//
|
||||
// XTD ...
|
||||
@@ -2324,7 +2335,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isTDPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2342,7 +2353,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isHKPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2357,7 +2368,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isCHEPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2384,7 +2395,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isICHPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2397,7 +2408,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isSTRPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2410,7 +2421,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isMRBPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2424,7 +2435,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isVLMPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2437,7 +2448,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isSSLCPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2452,7 +2463,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isHULLPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2466,7 +2477,7 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isADXTDPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
@@ -2494,13 +2505,31 @@ struct X121SignalGenerator
|
||||
;
|
||||
if (isMATDPassed)
|
||||
{
|
||||
signs++;
|
||||
result++;
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
bool IsConditionsValidForShort(
|
||||
X121SetupConditions &conditions, // Conditions
|
||||
int verifications = 4 // Number of Verifications
|
||||
)
|
||||
{
|
||||
//
|
||||
bool result = false;
|
||||
|
||||
//
|
||||
int signs = CountShortValidations(conditions);
|
||||
|
||||
//
|
||||
result =
|
||||
//
|
||||
signs > verification
|
||||
verifications <= 0
|
||||
? signs > 0
|
||||
: signs >= verifications
|
||||
//
|
||||
;
|
||||
|
||||
@@ -3410,3 +3439,52 @@ private:
|
||||
// Props ...
|
||||
X121SetupInputs inputs; // Setup Configurations ...
|
||||
};
|
||||
|
||||
//
|
||||
// Tools ...
|
||||
|
||||
//
|
||||
int FindSignalConditionsIndex(
|
||||
XSignal &signal,
|
||||
X121SetupConditions &conditions[] //
|
||||
)
|
||||
{
|
||||
//
|
||||
int result = -1;
|
||||
|
||||
//
|
||||
// Check Signal is Valid ...
|
||||
if (!signal.IsValid())
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
// Check Conditions Count ...
|
||||
int conditionsCount = ArraySize(conditions);
|
||||
if (!IsValidSize(conditionsCount))
|
||||
{
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
for (int i = 0; i < conditionsCount; i++)
|
||||
{
|
||||
//
|
||||
X121SetupConditions iConditions = conditions[i];
|
||||
|
||||
//
|
||||
if (signal.symbol == iConditions.symbol &&
|
||||
signal.period == iConditions.period)
|
||||
{
|
||||
//
|
||||
result = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
return result;
|
||||
}
|
||||
|
||||
//
|
||||
Reference in New Issue
Block a user