OpenSCADAWiki: Doc/API/part5 ...

Home | Index | Changes | Comments | Users | Registration | Login  Password:  
 
This is an old revision of Doc/API/part5 from 2016-09-29 12:39:50..

5. Ïîäñèñòåìà "Àðõèâû" (TArchiveS)

Ïîäñèñòåìà "Àðõèâû" ïðåäñòàâëåíà îáúåêòîì TArchiveS, êîòîðûé ñîäåðæèò íà óðîâíå ïîäñèñòåìû ìîäóëüíûå îáúåêòû òèïîâ àðõèâàòîðîâ TTypeArchivator. Êàæäûé îáúåêò òèïà àðõèâàòîðà ñîäåðæèò îáúåêòû àðõèâàòîðîâ ñîîáùåíèé TMArchivator è àðõèâàòîðîâ çíà÷åíèé TVArchivator. Êðîìå ýòîãî îáúåêò ïîäñèñòåìû àðõèâû ñîäåðæèò ìåòîäû àðõèâà ñîîáùåíèé è îáúåêòû àðõèâîâ çíà÷åíèé TVArchive. Îáúåêò àðõèâà çíà÷åíèé TVArchive ñîäåðæèò áóôåð çíà÷åíèé ïóò¸ì íàñëåäîâàíèÿ îáúåêòà áóôåðà TValBuf. Äëÿ ñâÿçè àðõèâà çíà÷åíèé ñ àðõèâàòîðàìè ïðåäíàçíà÷åí îáúåêò ýëåìåíòà çíà÷åíèÿ TVArchEl. Ýòîò îáúåêò ñîäåðæèòñÿ â àðõèâàòîðå è íà íåãî ññûëàåòñÿ àðõèâ. Ñòðóêòóðà ïîäñèñòåìû "Àðõèâû" ïðåäñòàâëåíà íà ðèñ. 5.


Èåðàðõè÷åñêàÿ ñòðóêòóðà ïîäñèñòåìû àðõèâîâ (15 Kb)
Ðèñ. 5. Èåðàðõè÷åñêàÿ ñòðóêòóðà ïîäñèñòåìû àðõèâîâ.

Ïîäñèñòåìà "Àðõèâû" ñîäåðæèò ìåõàíèçìû àðõèâèðîâàíèÿ ñîîáùåíèé è çíà÷åíèé. Íåïîñðåäñòâåííî ñîäåðæèò àðõèâ ñîîáùåíèé âìåñòå ñ åãî áóôåðîì. Ñîäåðæèò ìåòîäû äîñòóïà ê àðõèâàì çíà÷åíèé è àðõèâàòîðàì çíà÷åíèé è ñîîáùåíèé. Êðîìå ýòîãî âûïîëíÿåò çàäà÷ó àêòèâíîãî ñáîðà äàííûõ èç èñòî÷íèêîâ çíà÷åíèé äëÿ àðõèâîâ çíà÷åíèé, à òàêæå àðõèâèðîâàíèå àðõèâà ñîîáùåíèé ïî àðõèâàòîðàì.


Àðõèâ çíà÷åíèé (TVArchive) ñîäåðæèò áóôåð (TValBuf) äëÿ ïðîìåæóòî÷íîãî íàêîïëåíèÿ çíà÷åíèé ïåðåä àðõèâèðîâàíèåì. Ñâÿçûâàåòñÿ ñ èñòî÷íèêîì çíà÷åíèé â ëèöå ïàðàìåòðîâ ñèñòåìû OpenSCADA â àêòèâíîì èëè ïàññèâíîì ðåæèìå, à òàêæå ñ äðóãèìè èñòî÷íèêàìè â ïàññèâíîì ðåæèìå. Äëÿ àðõèâèðîâàíèÿ íà ôèçè÷åñêèå õðàíèëèùà ñâÿçûâàåòñÿ ñ àðõèâàòîðàìè çíà÷åíèé ðàçëè÷íûõ òèïîâ.


Îáúåêò áóôåðà TValBuf ñîäåðæèò ìàññèâ çíà÷åíèé îñíîâíûõ òèïîâ ñèñòåìû OpenSCADA: ñòðîêà, öåëîå, âåùåñòâåííîå è ëîãè÷íîå. Ïîääåðæèâàåòñÿ õðàíåíèå çíà÷åíèé â ðåæèìàõ æåñòêîé, ìÿãêîé ñåòêè è ðåæèìå ñâîáîäíîãî äîñòóïà. Ïðåäóñìîòðåí òàêæå ðåæèì âðåìåíè âûñîêîãî ðàçðåøåíèÿ (ìèêðîñåêóíäû). Èñïîëüçóåòñÿ êàê äëÿ íåïîñðåäñòâåííîãî õðàíåíèÿ áîëüøèõ ìàññèâîâ çíà÷åíèé, òàê è äëÿ îáìåíà ñ áîëüøèìè ìàññèâàìè ìåòîäîì ïîêàäðîâîãî äîñòóïà.


Êîðíåâîé îáúåêò ìîäóëÿ ïîäñèñòåìû "Àðõèâû" (TTypeArchivator) ñîäåðæèò èíôîðìàöèþ î êîíêðåòíî âçÿòîì òèïå ìîäóëÿ.  ðàìêàõ îòäåëüíûõ ìîäóëåé ìîæåò ðåàëèçîâûâàòü ñîáñòâåííûå îáùåìîäóëüíûå ôóíêöèè.  îáùåì äëÿ ìîäóëåé ýòîãî òèïà ñîäåðæèò ìåòîäû äîñòóïà ê õðàíèëèùàì çíà÷åíèé è ñîîáùåíèé.


Îáúåêò àðõèâàòîðà ñîîáùåíèé (TMArchivator) ñîäåðæèò êîíêðåòíóþ ðåàëèçàöèþ õðàíèëèùà ñîîáùåíèé. Â îáùåì äëÿ àðõèâàòîðîâ ñîîáùåíèé ïðåäîñòàâëÿåòñÿ èíòåðôåéñ äîñòóïà ê ðåàëèçàöèè ìåõàíèçìà àðõèâèðîâàíèÿ â ìîäóëÿõ.


Îáúåêò àðõèâàòîðà çíà÷åíèé (TVArchivator) ñîäåðæèò êîíêðåòíóþ ðåàëèçàöèþ õðàíèëèùà çíà÷åíèé.  îáùåì äëÿ àðõèâàòîðîâ çíà÷åíèé ïðåäîñòàâëÿåòñÿ èíòåðôåéñ äîñòóïà ê ðåàëèçàöèè ìåõàíèçìà àðõèâèðîâàíèÿ è íàçíà÷åíèå àðõèâîâ çíà÷åíèé íà îáñëóæèâàíèå àðõèâàòîðîì.


Îáúåêò ýëåìåíòà àðõèâà TVArchEl ñâÿçûâàåò îáúåêòû àðõèâîâ ñ àðõèâàòîðàìè. Èñïîëüçóåòñÿ äëÿ äîñòóïà ê àðõèâàòîðàì èç àðõèâà, à òàêæå ê àðõèâàì èç àðõèâàòîðà, ò.å. äëÿ ïåðåêð¸ñòíûõ âûçîâîâ.

5.1. Îáúåêò ïîäñèñòåìû "Àðõèâû" (TArchiveS)

Íàñëåäóåò:SubSYS.

Ïóáëè÷íûå ìåòîäû:


Ïóáëè÷íûå àòðèáóòû:

5.2. Îáúåêò àðõèâà çíà÷åíèé (TVArchive)

Íàñëåäóåò:TCntrNode, TValBuf, TConfig

Äàííûå:
Ðåæèì ñáîðà äàííûõ/èñòî÷íèê (struct — TVArchive::SrcMode):


Ïóáëè÷íûå ìåòîäû:

5.3. Îáúåêò áóôåðà çíà÷åíèé (TValBuf)

Íàñëåäóåòñÿ:TVArchive

Ïóáëè÷íûå ìåòîäû:


Çàùèù¸ííûå ìåòîäû:

5.4. Ìîäóëüíûé îáúåêò òèïà àðõèâàòîðà (TTypeArchivator)

Íàñëåäóåò:TModule.
Íàñëåäóåòñÿ:Êîðíåâûìè îáúåêòàìè ìîäóëåé ïîäñèñòåìû "Àðõèâû".

Ïóáëè÷íûå ìåòîäû:


Çàùèù¸ííûå ìåòîäû:

5.5. Îáúåêò àðõèâàòîðà ñîîáùåíèé (TMArchivator)

Íàñëåäóåò:TCntrNode, TConfig
Íàñëåäóåòñÿ:Îáúåêòàìè àðõèâàòîðîâ ñîîáùåíèé ìîäóëåé ïîäñèñòåìû "Àðõèâû".

Ïóáëè÷íûå ìåòîäû:


Çàùèù¸ííûå àòðèáóòû:


Çàùèù¸ííûå ìåòîäû:

5.6. Îáúåêò àðõèâàòîðà çíà÷åíèé (TVArchivator)

Íàñëåäóåò:TCntrNode, TConfig
Íàñëåäóåòñÿ:Îáúåêòàìè àðõèâàòîðîâ çíà÷åíèé ìîäóëåé ïîäñèñòåìû "Àðõèâû".

Ïóáëè÷íûå ìåòîäû:


Çàùèù¸ííûå ìåòîäû:


Çàùèù¸ííûå àòðèáóòû:

5.7. Îáúåêò ýëåìåíòà àðõèâà â àðõèâàòîðå (TVArchEl)

Íàñëåäóåòñÿ:Îáúåêòàìè àðõèâàòîðîâ çíà÷åíèé ìîäóëåé ïîäñèñòåìû "Àðõèâû".

Ïóáëè÷íûå ìåòîäû:


Ïóáëè÷íûå àòðèáóòû:


Çàùèù¸ííûå ìåòîäû:


 
There are no files on this page.[Display files/form]
There is no comment on this page. [Display comments/form]