|
@@ -45,6 +45,8 @@ public:
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ IFFAILBREAK(GetFunction()->GetSystemRunInfo(_runInfo));
|
|
|
+
|
|
|
auto privilegeFunc = GetFunction()->GetPrivilegeFunction();
|
|
|
privilegeFunc->RegistEntityLifeEvent(this);
|
|
|
/*register all entity state*/
|
|
@@ -155,11 +157,13 @@ public:
|
|
|
else if (eLastState == EntityState_Starting && eState == EntityState_Idle) {
|
|
|
/** if meet multi-entities at one mod, do test maybe failed beacause mod is busy at starting other brother entity.*/
|
|
|
//TestEntity(pszEntityName);
|
|
|
- if (strcmp(pszEntityName, "SampleEntity") == 0) {
|
|
|
- if (_testInfo.isTestMode) {
|
|
|
- if (IS_SUCCEED(StartTestEntity())) {
|
|
|
- //TestAllRegistedEntity();
|
|
|
- }
|
|
|
+
|
|
|
+ if ((_runInfo.dwBootOption & BootOption_Entity) == 0 /** if specified entity fired, do not wake up highvoltage*** entities. */
|
|
|
+ &&
|
|
|
+ /** only after SampleEntity idle, we are permitted to wake up hightVoltage** entities.*/
|
|
|
+ strcmp(pszEntityName, "SampleEntity") == 0) {
|
|
|
+ if (IS_SUCCEED(StartTestEntity())) {
|
|
|
+ //TestAllRegistedEntity();
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -216,7 +220,7 @@ public:
|
|
|
|
|
|
void OnTimeout(DWORD dwTimerID)
|
|
|
{
|
|
|
- Dbg("timer out: %d", dwTimerID);
|
|
|
+ Dbg("timer out: %d, to shake hand", dwTimerID);
|
|
|
CAutoArray<CSimpleStringA> arrStartEntities;
|
|
|
CAutoArray< DWORD> arrEntitityID;
|
|
|
IFFAILBREAK(GetFunction()->GetAllStartedEntity(arrStartEntities, arrEntitityID));
|
|
@@ -307,6 +311,7 @@ private:
|
|
|
CUUID m_subUUID;
|
|
|
CAutoArray<CSimpleStringA> _arrTestEntities;
|
|
|
DWORD _dwStartedTestEntities;
|
|
|
+ CSystemRunInfo _runInfo;
|
|
|
};
|
|
|
|
|
|
SP_BEGIN_ENTITY_MAP()
|