nl:: Weave:: System:: Platform:: Layer
סיכום
פונקציות |
|
---|---|
DidInit(Layer & aLayer, void *aContext, Error aStatus)
|
NL_DLL_EXPORT void
זוהי הוק (hook) שכבה של מערכת Weave ספציפית לפלטפורמה, לאחר אתחול.
|
DidShutdown(Layer & aLayer, void *aContext, Error aStatus)
|
NL_DLL_EXPORT void
זוהי הוק (hook) שכבה לפני השבתה של מערכת שזירה ספציפית לפלטפורמה.
|
DispatchEvent(Layer & aLayer, void *aContext, Event aEvent)
|
NL_DLL_EXPORT Error
זהו הוק (hook) אירוע / שליחת הודעות ספציפי לפלטפורמה.
|
DispatchEvents(Layer & aLayer, void *aContext)
|
NL_DLL_EXPORT Error
זהו הוק (hook) אירוע / שליחת הודעות ספציפי לפלטפורמה.
|
GetClock_Monotonic(void)
|
uint64_t
פונקציה ספציפית לפלטפורמה לקבלת זמן מערכת מונוטוני במיליוניות השנייה.
|
GetClock_MonotonicHiRes(void)
|
uint64_t
פונקציה ספציפית לפלטפורמה, לקבלת זמן מערכת מונוטוני ברזולוציה גבוהה במיליוניות השנייה.
|
GetClock_MonotonicMS(void)
|
uint64_t
פונקציה ספציפית לפלטפורמה לקבלת זמן מערכת מונוטוני באלפיות שנייה.
|
GetClock_RealTime(uint64_t & curTime)
|
Error
פונקציה ספציפית לפלטפורמה, לקבלת הזמן האמיתי (civil) הנוכחי בפורמט זמן מיקרו-שניות של Unix.
|
GetClock_RealTimeMS(uint64_t & curTimeMS)
|
Error
פונקציה ספציפית לפלטפורמה, לקבלת הזמן האמיתי (civil) הנוכחי בפורמט הזמן של Unix.
|
PostEvent(Layer & aLayer, void *aContext, Object & aTarget, EventType aType, uintptr_t aArgument)
|
NL_DLL_EXPORT Error
זהו אירוע / הוק (hook) לפוסט של הודעה ספציפית.
|
SetClock_RealTime(uint64_t newCurTime)
|
Error
פונקציה ספציפית לפלטפורמה להגדרת הזמן האמיתי (אזרחי) הנוכחי.
|
StartTimer(Layer & aLayer, void *aContext, uint32_t aMilliseconds)
|
NL_DLL_EXPORT Error
זהו הוק (hook) אירוע / שליחת הודעות ספציפי לפלטפורמה.
|
WillInit(Layer & aLayer, void *aContext)
|
NL_DLL_EXPORT Error
זהו הוק (hook) שכבה לאתחול של מערכת Weave ספציפית לפלטפורמה.
|
WillShutdown(Layer & aLayer, void *aContext)
|
NL_DLL_EXPORT Error
זוהי הוק (hook) שכבה לפני השבתה של מערכת שזירה ספציפית לפלטפורמה.
|
פונקציות
DidInit
NL_DLL_EXPORT void DidInit( Layer & aLayer, void *aContext, Error aStatus )
זוהי הוק (hook) שכבה של מערכת Weave ספציפית לפלטפורמה, לאחר אתחול.
כדי לבטל את ההגדרה הזו, מצהירים על ההגדרה של המעבד הקדמי, WEAVE_SYSTEM_CONFIG_PLATFORM_PROVIDES_XTOR_FUNCTIONS.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
DidShutdown
NL_DLL_EXPORT void DidShutdown( Layer & aLayer, void *aContext, Error aStatus )
זוהי הוק (hook) שכבה לפני השבתה של מערכת שזירה ספציפית לפלטפורמה.
כדי לבטל את ההגדרה הזו, מצהירים על ההגדרה של המעבד הקדמי, WEAVE_SYSTEM_CONFIG_PLATFORM_PROVIDES_XTOR_FUNCTIONS.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
החזרות |
WEAVE_SYSTEM_NO_ERROR על הצלחה; אחרת, שגיאה ספציפית שמציינת את הסיבה לכשל בכיבוי. החזרת הסטטוס 'לא בוצע בהצלחה' תבטל את ההשבתה.
|
DispatchEvent
NL_DLL_EXPORT Error DispatchEvent( Layer & aLayer, void *aContext, Event aEvent )
זהו הוק (hook) אירוע / שליחת הודעות ספציפי לפלטפורמה.
כדי לבטל את ההגדרה הזו, מצהירים על ההגדרה של מעבד המידע מראש, WEAVE_SYSTEM_CONFIG_PLATFORM_PROVIDES_EVENT_FUNCTIONS.
הפעולה הזו שולחת את האירוע שצוין לטיפול, מסירה את הסוג והארגומנטים מהאירוע להעברה אל Weave System Layer::HandleEvent לצורך השליחה בפועל.
פרטים | |||||||||
---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||
מוחזר ערכים |
|
DispatchEvents
NL_DLL_EXPORT Error DispatchEvents( Layer & aLayer, void *aContext )
זהו הוק (hook) אירוע / שליחת הודעות ספציפי לפלטפורמה.
כדי לבטל את ההגדרה הזו, מצהירים על ההגדרה של מעבד המידע מראש, WEAVE_SYSTEM_CONFIG_PLATFORM_PROVIDES_EVENT_FUNCTIONS.
הפעולה הזו משפיעה על לולאת אירוע, בהמתנה בתור שמספק שירות למכונה הזו, מוציאה אירועים מהתור הזה ואז שולחת אותם לטיפול.
פרטים | |||||||||
---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||
מוחזר ערכים |
|
GetClock_Monotonic
uint64_t GetClock_Monotonic( void )
פונקציה ספציפית לפלטפורמה לקבלת זמן מערכת מונוטוני במיליוניות השנייה.
הפונקציה הזו צפויה להחזיר את הזמן שחלף במיקרו-שניות מאז תקופת זמן שרירותית שהוגדרה על ידי פלטפורמה. הטמעות של הפלטפורמה חייבות להחזיר ערך שהולך וגדל (כלומר, אף פעם לא נפרס) בין הפעלה מחדש של המערכת. בנוסף, מקור הזמן הבסיסי נדרש לסמן את התיבה ברציפות בכל מצבי השינה של המערכת שלא כוללים הפעלה מחדש כשיוצאים ממצב שינה.
פרק הזמן של הזמן שמוחזרת על ידי הפונקציה הזו לא חייב להיות זהה לזה של כל אחת מהפונקציות האחרות של GetClock..., כולל GetClock_MonotonicMS().
הפונקציה אמורה להיות בטוחה בשרשור בכל פלטפורמה שבה משתמשים בשרשור.
פרטים | |
---|---|
החזרות |
הזמן שחלף במיליוניות השנייה מאז תקופה של זמן מערכת שרירותית שהוגדרה על ידי פלטפורמה.
|
GetClock_MonotonicHiRes
uint64_t GetClock_MonotonicHiRes( void )
פונקציה ספציפית לפלטפורמה, לקבלת זמן מערכת מונוטוני ברזולוציה גבוהה במיליוניות השנייה.
הפונקציה הזו צפויה להחזיר את הזמן שחלף במיקרו-שניות מאז תקופת זמן שרירותית שהוגדרה על ידי פלטפורמה. הערכים שהוחזרו על ידי GetClock_MonotonicHiRes() חייבים להיות גדולים יותר מתמיד (כלומר, אף פעם לא לכווץ). עם זאת, אין צורך לסמן את הטיימר הבסיסי במצב שינה עמוקה במערכת.
מומלץ לפלטפורמה להטמיע את GetClock_MonotonicHiRes() באמצעות טיימר ברזולוציה גבוהה, שאינו כפוף לכוונונים הדרגתיים של השעון (הסתה). בפלטפורמות ללא טיימר כזה, GetClock_MonotonicHiRes() יכולה להחזיר את אותו הערך כמו של GetClock_Monotonic().
פרק הזמן של הזמן שמוחזרת על ידי הפונקציה הזו לא חייב להיות זהה לזה של כל אחת מהפונקציות האחרות של GetClock....
הפונקציה אמורה להיות בטוחה בשרשור בכל פלטפורמה שבה משתמשים בשרשור.
פרטים | |
---|---|
החזרות |
הזמן שחלף במיליוניות השנייה מאז תקופה של זמן מערכת שרירותית שהוגדרה על ידי פלטפורמה.
|
GetClock_MonotonicMS
uint64_t GetClock_MonotonicMS( void )
פונקציה ספציפית לפלטפורמה לקבלת זמן מערכת מונוטוני באלפיות שנייה.
הפונקציה הזו צפויה להחזיר את הזמן שחלף באלפיות השנייה מאז תקופה שרירותית שמוגדרת לפלטפורמה, לפי הגדרת הפלטפורמה. הטמעות של הפלטפורמה חייבות להחזיר ערך שהולך וגדל (כלומר, אף פעם לא נפרס) בין הפעלה מחדש של המערכת. בנוסף, מקור הזמן הבסיסי נדרש לסמן את התיבה ברציפות בכל מצבי השינה של המערכת שלא כוללים הפעלה מחדש כשיוצאים ממצב שינה.
פרק הזמן של הזמן שהוחזר על ידי הפונקציה הזו לא חייב להיות זהה לזה של כל אחת מהפונקציות האחרות של GetClock..., כולל GetClock_Monotonic().
הפונקציה אמורה להיות בטוחה בשרשור בכל פלטפורמה שבה משתמשים בשרשור.
פרטים | |
---|---|
החזרות |
הזמן שחלף באלפיות השנייה מאז תקופה שרירותית לפי הגדרת פלטפורמה.
|
GetClock_RealTime
Error GetClock_RealTime( uint64_t & curTime )
פונקציה ספציפית לפלטפורמה, לקבלת הזמן האמיתי (civil) הנוכחי בפורמט זמן מיקרו-שניות של Unix.
הפונקציה אמורה להחזיר את התפיסה של הפלטפורמה המקומית לגבי זמן אמת נוכחי, מבוטאת כערך זמן Unix מותאם למיקרו-שניות. השעון הבסיסי נדרש להתאים בקצב של שניות שלמות לפחות (ערכים של 1,000,000), אבל ייתכן שהסימון יתעכב מהר יותר.
באותן פלטפורמות שיכולות לעקוב אחרי זמן אמת, GetClock_RealTime() חייבת להחזיר את השגיאה WEAVE_SYSTEM_ERROR_REAL_TIME_NOT_SYNCED בכל פעם שהמערכת לא מסתנכרנת עם זמן אמת.
בפלטפורמות שאין להן אפשרות לעקוב בזמן אמת אסור להטמיע את הפונקציה GetClock_RealTime() , ובכך לאלץ כשלים בזמן הקישור בתכונות שתלויות בגישה בזמן אמת. לחלופין, פלטפורמות כאלה עשויות לספק יישום של GetClock_RealTime() שמחזיר את השגיאה WEAVE_SYSTEM_ERROR_NOT_SUPPORTED.
הפונקציה אמורה להיות בטוחה בשרשור בכל פלטפורמה שבה משתמשים בשרשור.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
מוחזר ערכים |
|
GetClock_RealTimeMS
Error GetClock_RealTimeMS( uint64_t & curTimeMS )
פונקציה ספציפית לפלטפורמה, לקבלת הזמן האמיתי (civil) הנוכחי בפורמט הזמן של Unix.
הפונקציה אמורה להחזיר את התפיסה של הפלטפורמה המקומית לגבי זמן אמת נוכחי, מבוטאת כערך זמן Unix בקנה מידה של אלפיות השנייה.
לקבלת פרטים על ההתנהגות הצפויה, אפשר לעיין בתיעוד של GetClock_RealTime() .
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
מוחזר ערכים |
|
PostEvent
NL_DLL_EXPORT Error PostEvent( Layer & aLayer, void *aContext, Object & aTarget, EventType aType, uintptr_t aArgument )
זהו אירוע / הוק (hook) לפוסט של הודעה ספציפית.
כדי לבטל את ההגדרה הזו, מצהירים על ההגדרה של מעבד המידע מראש, WEAVE_SYSTEM_CONFIG_PLATFORM_PROVIDES_EVENT_FUNCTIONS.
הפעולה הזו גורמת ליצירת אירוע / הודעה מהסוג שצוין עם הארגומנט שסופק לתור לאירוע / הודעה הספציפי לפלטפורמה של המופע הזה.
פרטים | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||||||
החזרות |
WEAVE_SYSTEM_NO_ERROR על הצלחה; אחרת, שגיאה ספציפית שמציינת את הסיבה לכשל באתחול.
|
SetClock_RealTime
Error SetClock_RealTime( uint64_t newCurTime )
פונקציה ספציפית לפלטפורמה להגדרת הזמן האמיתי (אזרחי) הנוכחי.
שזירה מפעילה את הפונקציה הזו כדי להגדיר את התפיסה של הפלטפורמה המקומית לגבי זמן אמת נוכחי. הזמן הנוכחי החדש מבוטא כערך זמן Unix, המותאם למיקרו-שניות.
לאחר ההגדרה, השעון הבסיסי של הפלטפורמה צפוי לעקוב אחרי זמן אמת ברמת פירוט של שניות שלמות לפחות.
בפלטפורמות שתומכות במעקב בזמן אמת, הפונקציה SetClock_RealTime() חייבת להחזיר את השגיאה WEAVE_SYSTEM_ERROR_ACCESS_DENIED אם לאפליקציית הקריאה אין הרשאה להגדיר את השעה הנוכחית.
בפלטפורמות שאין להן אפשרות לעקוב בזמן אמת או שאין בהן אפשרות להגדיר זמן אמת, אסור להטמיע את הפונקציה SetClock_RealTime() וכך לאלץ כשלים בזמן הקישור בתכונות שתלויות בהגדרת זמן אמת. לחלופין, פלטפורמות כאלה עשויות לספק יישום של SetClock_RealTime() שמחזיר את השגיאה WEAVE_SYSTEM_ERROR_NOT_SUPPORTED.
הפונקציה אמורה להיות בטוחה בשרשור בכל פלטפורמה שבה משתמשים בשרשור.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
מוחזר ערכים |
|
StartTimer
NL_DLL_EXPORT Error StartTimer( Layer & aLayer, void *aContext, uint32_t aMilliseconds )
זהו הוק (hook) אירוע / שליחת הודעות ספציפי לפלטפורמה.
כדי לבטל את ההגדרה הזו, מצהירים על ההגדרה של מעבד המידע מראש, WEAVE_SYSTEM_CONFIG_PLATFORM_PROVIDES_EVENT_FUNCTIONS.
פרטים | |||||||
---|---|---|---|---|---|---|---|
פרמטרים |
|
||||||
מוחזר ערכים |
|
WillInit
NL_DLL_EXPORT Error WillInit( Layer & aLayer, void *aContext )
זהו הוק (hook) שכבה לאתחול של מערכת Weave ספציפית לפלטפורמה.
כדי לבטל את ההגדרה הזו, מצהירים על ההגדרה של המעבד הקדמי, WEAVE_SYSTEM_CONFIG_PLATFORM_PROVIDES_XTOR_FUNCTIONS.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
החזרות |
WEAVE_SYSTEM_NO_ERROR על הצלחה; אחרת, שגיאה ספציפית שמציינת את הסיבה לכשל באתחול. החזרת סטטוס 'לא בוצע בהצלחה' תבטל את האתחול.
|
WillShutdown
NL_DLL_EXPORT Error WillShutdown( Layer & aLayer, void *aContext )
זוהי הוק (hook) שכבה לפני השבתה של מערכת שזירה ספציפית לפלטפורמה.
כדי לבטל את ההגדרה הזו, מצהירים על ההגדרה של המעבד הקדמי, WEAVE_SYSTEM_CONFIG_PLATFORM_PROVIDES_XTOR_FUNCTIONS.
פרטים | |||||
---|---|---|---|---|---|
פרמטרים |
|
||||
החזרות |
WEAVE_SYSTEM_NO_ERROR על הצלחה; אחרת, שגיאה ספציפית שמציינת את הסיבה לכשל בכיבוי. החזרת הסטטוס 'לא בוצע בהצלחה' תבטל את ההשבתה.
|