《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ActiveX和XML技術的ATS站場圖設計與實現
基于ActiveX和XML技術的ATS站場圖設計與實現
來源:微型機與應用2013年第18期
張延龍, 郭秀清
(同濟大學 控制科學與工程系, 上海201804)
摘要: ActiveX控件和XML數據表是整個軌道交通列車監控(ATS)仿真系統的基礎。針對ATS仿真系統開發的需求和現狀并結合上海地鐵5號線ATS仿真系統的實際應用,提出并設計了利用VC2008平臺生成ActiveX控件進而生成站場圖的方法。重點介紹了基于XML數據表的數據結構的設計與實現。
Abstract:
Key words :

摘   要: ActiveX控件和XML數據表是整個軌道交通列車監控(ATS)仿真系統的基礎。針對ATS仿真系統開發的需求和現狀并結合上海地鐵5號線ATS仿真系統的實際應用,提出并設計了利用VC2008平臺生成ActiveX控件進而生成站場圖的方法。重點介紹了基于XML數據表的數據結構的設計與實現。
關鍵詞: ActiveX; XML; 站場圖; 數據結構

    進入21世紀以來,隨著中國經濟的飛速發展和城市化進程的加快,城市軌道交通也進入大發展時期。我國已經成為世界最大的城市軌道交通市場。城市軌道交通的快速發展也帶來了一個顯著的問題,就是軌道交通設施一旦完工立即投入運行,根本沒有時間允許對相關運營維護人員進行培訓。此外,由于現場列車行車安全和時間等因素的限制,已經投入使用的列車控制系統等現場設備不可能用來教學培訓。學員無法進行實際的練習。因此,怎樣在保證安全的前提下使每一位學員系統、快速地掌握相關技術,就成為迫切需要解決的難題。鑒于此有必要開發一套完整的用于教學、培訓的ATS仿真系統。
    ActiveX控件具有可擴展、可重用、易組合、語言無關等特點。將其應用在ATS仿真系統的設計與實現中可以大大減少重復勞動,縮短開發周期。可擴展標記語言XML(Extensible Markup Language)是用于標記電子文件使其具有結構性的標記語言,可以用來標記數據,定義數據類型,是一種允許用戶對自己的標記語言進行定義的源語言。XML與其他數據表現形式最大的不同是:它極其簡單。XML的簡單使其易于在任何應用程序中讀寫數據,這使XML很快成為數據交換的唯一公共語言。
1 ActiveX控件的設計與實現
1.1 控件的設計

    站場圖是ATS仿真培訓系統的基礎,是ATS仿真系統可視控件的一部分。所有軌道設備的狀態、進路生成狀態、信號設備狀態和列車運行狀態都會在站場圖上直接反應出來。通過對ATS仿真系統的分析,站場圖的基本組成控件包括區段控件、道岔控件、信號機控件、站臺控件、車次窗控件以及一些其他控件,如圖1所示。


    構建站場圖控件的首要任務是設計控件的屬性。站場圖控件的屬性可以分為兩類:靜態屬性和動態屬性。靜態屬性指的是在繪制站場圖時可以修改的一些屬性,站場圖繪制完成后這些屬性在ATS仿真培訓系統運行時是不可改變的。動態屬性指的是在繪制站場圖時無需設置或僅需默認設置,在ATS仿真系統的運行過程中不斷變化的屬性[1]。例如,信號機控件的ID、名稱在ATS仿真系統運行過程中不會變化,這屬于靜態屬性;信號機的背景顏色在程序運行過程中經常發生變化,這屬于動態屬性。
1.2 控件的實現
    開發站場圖控件使用的是VC2008開發平臺, 它是開發ActiveX 控件的常用工具之一。VC2008集成開發環境, 使用了微軟自己的類庫MFC,MFC 對開發ActiveX 控件提供了全面的支持。MFC對ActiveX控件的支持封裝為COlecontrol類,站場圖中各個控件均由此類派生[2]。本文以信號機為例說明ActiveX控件的設計與實現過程。信號機的靜態屬性有信號機名稱、信號機位置類型和字體顏色,信號機的動態屬性有信號機背景顏色、控件可見性和基座顏色。其主要代碼如下:
     class CSignalCtrl : public COleControl
    {
    … …
    //靜態屬性
     CString         m_SignalName;                  //信號機名稱
    short        m_LocationType;              //信號機位置
         COLORREF    m_FontColor;                //字體的顏色
    //動態屬性
    COLORREF    m_SignalBackColor;           //信號機背景色
    BOOL        m_Visible;            //控件可見性標志
    COLORREF    m_VerticalColor;              //基座顏色
    … …
    }
    在VC++中設計ActiveX控件實際上就是對OnCreate()、DoPropExchange()、OnDraw()等函數的處理。OnCreate() 函數完成控件的創建以及控件結構、尺寸和字體等外形的設置。DoPropExchange() 函數負責的是狀態永久性機制, 利用這個函數可以把ActiveX 控件的屬性和內部信息保存到存儲對象或者是流對象中。這個函數通常調用PX_ family 函數來完成OLE 控件的用戶自定義屬性操作。OnSize()函數用來調整控件顯示窗口的大小和位置。OnDraw()函數利用指定圖像在指定區域繪制OLE 控件[3]。MFC默認的控件邊界形狀是一個矩形。這個矩形可以由鼠標拖動而改變大小,所以在設計控件時應當根據默認矩形的上下左右邊界計算出控件內部各點的相對坐標。這樣在拖拽控件改變大小時控件內部線條按比例放大或縮小。
    在VC2008編譯環境中,信號機控件如圖2所示。

2 站場圖的生成
2.1 控件注冊

    所有的ActiveX控件必須在注冊之后才可以使用。Regsvr32程序的作用就是注冊ActiveX控件。將所有控件放入一個庫中并在該庫中建立一個名為reg.dat的MS-DOS批處理文件,在該文件中對控件進行注冊。例如,對信號機進行注冊的語句為:regsvr32-s./Line5Signal.ocx。使用控件前運行該文件就可以將控件的所有信息(包括所在路徑)都寫入注冊表中。
2.2 繪制站場圖
    ATS仿真培訓系統的站場圖就是由一個個控件拼接而成的。按照軌道交通線路的實際情況,從控件庫中選取合適的控件,然后配置控件的功能和數據,確定控件間的相互關系和通信方式,最終就可以生成一個站場圖。本文按照上海市地鐵5號線現場的實際情況分別繪制出MV1、MV2、MV3 3張站場圖??紤]到項目接下來要在主視圖中加載站場圖, 在為站場圖所在的對話框添加類時要設置其基類為CFormView。部分站場圖如圖3所示。

 

 

3 數據處理模塊的設計
3.1 數據庫的選擇

    可擴展標記語言XML是W3C組織于1998年2月發布的標準,是Internet環境中跨平臺的、依賴于內容的技術,是當前處理結構化信息的有力工具。XML文檔結構嚴謹,層次分明,語義明確,具有良好的可讀性、易編寫和易維護等特性,而且使得多媒體信息在不同的系統之間相互交流成為現實。
    XML可以充當小型數據庫的功能。雖然Access、Oracle和SQL Sever等數據庫都提供了強有力的數據存儲和分析能力,例如數據索引、排序和查找等能力,但與這些數據庫不同,XML僅僅是存儲數據。事實上XML與其他數據表現形式最大的不同是:它極其簡單。這個優點使得XML與眾不同。在ATS仿真系統中,由于站場元素間關系的復雜性和多樣性,如果使用關系數據庫,依據數據庫設計范式而設計的數據結構會因為數據關系的復雜性而急劇膨脹,不利于存儲一些結構松散和關系復雜的站場元素模型信息。另外,站場元素模型的數據量不大,此時XML簡單的優點便發揮了用處,因此將站場元素模型信息以XML原始格式存儲,方便靈活,沒有版權,沒有約束,也可以節約成本[4]。在站場圖模塊中,用XML描述了進路、區段、信號燈、道岔等站場元素的模型,記錄它們的信息,在后面各個功能模塊設計中都是基于這些數據的。
3.2 數據結構設計
    因為靜態數據包括基本信號點之間的邏輯關系,所以在靜態數據模塊中,不僅包含該信號點的基本信息(如類別、名稱、長度等),還應包含其他的信號點信息(如左邊設備的名稱、右邊設備的名稱)。因此在設計信號點基本數據時,每一個信號點都應包含完整的信息字段,例如區段字段,應該包括ID、名稱、左連接設備名稱、右連接設備名稱、占用標志和區段長度等。
    XML文件分為Axle、Cross、Platform、Signal、Switch、 TrainNumWnd、Timetable和Routes這8個文件。其中前6個文件存儲的是控件的位置信息,Routes文件放置的是站場圖中的進路信息,Timetable是列車的時刻表信息。
3.2.1 信號機數據結構設計
    以信號機為例,信號機主要包含5個字段:信號機ID、信號機名稱、接近區段名稱、第一區段名稱和所屬集中站,其XML文件的結構如下:
    <Signal>
        <ID>S1</ID>                           //信號機控件ID
        <Name>X108</Name>              //信號機控件名稱
        <JJQD>G0003</JJQD>      //信號機控件的接近區段
        <FirstQD>108</FirstQD> //信號機控件的第一區段
        <JZZID>1</JZZID>      //信號機控件所屬集中站
    </Signal>
    XML數據庫中每種類型的數據讀進內存以后必須有相應的數據結構進行存儲。同時該結構還要與界面上的具體控件相關聯。為此以各個控件的原始類為基礎添加上相應的位置和狀態屬性設計了控件的封裝類。在VC程序中可以利用CMarkup類對XML文件進行解析,用解析出來的各個控件的信息構造相應的封裝類,控件原始類在封裝類中作為一個具有public屬性的成員變量。在程序中數據的存儲是以C++ STL中vector容器的形式存儲。使用vector容器存儲數據不但可以減少內存泄漏的危險而且可以借助于vector自身具有的屬性方便地查找和設置元素。信號機控件的封裝類如下:
class Signal
{
……
public:
    CLine5Signal *m_pSignalCtrl;       //綁定一個信號燈變量
public:
    CString m_ID;
    CString m_Name;
    CString m_JJQD;
    CString m_FirstQD;
    CString m_JzzID;
    BOOL m_SignalLock;                          //鎖閉標志
    BOOL m_SignalARSFlag;         //單個信號的ARS功能
                                開關標志
    BOOL m_SignalOpen;          //信號燈開放與否標志
    BOOL m_GuideFlag;          //信號燈引導標志
    BOOL m_DefaultMode;      //信號燈默認模式
    ……
public:                      //故障標志
    BOOL m_fault1;              //紅燈主燈絲故障
    BOOL m_fault2;              //紅燈主副燈絲故障
    BOOL m_fault3;              //紅燈狀態良好
    BOOL m_fault4;              //綠燈主燈絲故障
    BOOL m_fault5;              //綠燈主副燈絲故障
    BOOL m_fault6;              //綠燈狀態良好
    BOOL m_fault7;              //無有效狀態數據
    ……
    ……
}
     信號機實體對象與界面控件的綁定是通過DDX_Control()宏完成的。例如信號機控件IDC_S1與信號機實體對象的綁定通過DDX_Control(pDX,IDC_S1,*pDoc->m_SignalPtrArray[0])完成。DDX_Control()是MFC中的宏,主要負責邏輯變量與界面控件的綁定操作。pDX是指向CdataExchange對象的指針,IDC_S1是控件ID,*pDoc->m_SignalPtrArray[0]是內存中的信號機對象。
3.2.2 時刻表數據結構設計
    時刻表實現了行車組織的工作計劃編排。時刻表中包含一個運營日中列車運行的所有信息。時刻表是后續列車運行調整模塊的核心,在生成站場圖的部分只需知道它的基本數據結構即可,其數據結構包括:車次號、站臺號、到達時間、出發時間,其XML文件結構如下所示:
     <TimeTableLists>
         <Name>時刻表1</Name>
          <TimeTable>
              <ID>10330Z</ID>                 //車次號
                <Record>
                  <Platform>DCL2</Platform>          //站臺號
                  <Arrival>05:33:50</Arrival>       //到達時間
                  <Departure>05:34:25</Departure>
                                           //出發時間
              </Record>
               ……               
          </TimeTable>
     </TimeTableLists>
3.2.3 進路搜索原理
    進路的生成主要是通過搜索信號機來完成的。具體過程如下:從這個信號機關聯的軌道出發,沿著信號機的方向搜索軌道鏈,若遇到與斜股同向的道岔,則將該道岔放入一個搜索棧中,然后沿著直線方向繼續搜索,直至找到反向的敵對信號機或下一車站的同向信號機;若此時搜索棧中仍有道岔,則取出道岔從斜股的方向按上面的描述搜索另一條進路,直到搜索棧中沒有道岔對象。在搜索的同時即記錄下相關控件對象信息。以圖2中的信號機X108為例,一共有兩條進路,一條進路是X108-X106, 另一條是X108-X110。這兩條進路在XML中按照如圖4所示的數據結構表示。

    程序開始運行時先把保存在XML表中的控件封裝類信息讀到內存中,并以合理的數據結構存儲起來,這樣就不用頻繁地讀取數據庫,能大大減少因讀取數據庫而占用的時間。程序從XML中讀入控件的位置和連接信息,利用構造函數設置其狀態信息。程序運行時也可以通過訪問封裝類的public成員變量設置其狀態信息。結合時刻表和進路信息就可以使列車運行起來。
    本文針對上海市地鐵5號線ATS培訓系統中的站場圖進行設計,構建了用于拼接站場圖的道岔和信號機等控件,并使用XML文件對控件位置和拼接信息進行存儲??丶膭澐峙c應用將站場圖的繪制過程簡化為簡單的拼圖操作, 大大縮短了整個ATS仿真系統的開發周期。合理的數據結構極大地保證了程序的快速平穩運行。本文對于ATS仿真系統的后續研究有著鋪墊作用。
參考文獻
[1] 王野, 郭秀清.基于組件技術的列車自動監控仿真系統開發平臺[J].計算機應用,2007,2(z2):286-288.
[2] 莊傳平,陳永生. 可復用的列車自動監控仿真系統組件的設計與實現[J].城市軌道交通研究, 2007(7):31-33.
[3] 郭永瑞,孫明德.ActiveX控件的編寫和使用[J].計算機與信息技術, 2007(22):48-49.
[4] 李根,李彥明,劉成良.基于可擴展標記語言的故障模型表述[J]. 機械制造與自動化,2012,41(04):115-117.

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          羞羞漫画18久久大片| 午夜精品久久久久久99热| 欧美精品99| 国产精品蜜臀在线观看| 亚洲主播在线播放| 久久久久久久网| 欧美另类高清视频在线| 欧美日韩另类字幕中文| 欧美黄网免费在线观看| 久久精品卡一| 欧美日韩国产二区| 亚洲欧美日韩中文播放| 国产精品久久国产三级国电话系列| 久久精品视频在线观看| 久久久欧美一区二区| 美日韩精品免费| 欧美大片在线观看一区| 亚洲一区二区三区中文字幕在线| 欧美日韩中文| 在线观看日韩av| 黄色亚洲网站| 妖精视频成人观看www| 免费在线欧美视频| 久久精品国产久精国产爱| 国产欧美1区2区3区| 欧美日韩国产精品一区二区亚洲| 欧美不卡在线视频| 一区二区三区日韩欧美| 亚洲国产高清一区二区三区| 久久精品国产一区二区电影| 久久精品一区蜜桃臀影院| 在线欧美不卡| 亚洲欧美偷拍卡通变态| 日韩午夜黄色| 欧美专区第一页| 国产日韩在线亚洲字幕中文| 狠狠88综合久久久久综合网| 国产精品一区二区欧美| 国内精品嫩模av私拍在线观看| 久久九九全国免费精品观看| 国产精品亚发布| 欧美理论在线| 欧美精品一区二区三区蜜臀| 国产日韩av高清| 欧美男人的天堂| 欧美日本三区| 欧美精品在线观看一区二区| 欧美在线观看视频一区二区三区| 亚洲精品日日夜夜| 欧美国产视频日韩| 欧美第一黄网免费网站| 美女国内精品自产拍在线播放| 国产精品国产三级国产普通话三级| 久久成人免费网| 亚洲午夜一二三区视频| 久久久一区二区三区| 久久只精品国产| 韩国三级电影久久久久久| 欧美14一18处毛片| 欧美网站在线观看| 欧美精品v日韩精品v国产精品| 狼人天天伊人久久| 国产视频一区二区三区在线观看| 久久综合给合久久狠狠狠97色69| 国产亚洲一区二区在线观看| 国产精品入口夜色视频大尺度| 国产精品国产三级国产普通话三级| 国产欧美 在线欧美| 亚洲国产精品成人综合| 日韩一级精品| 国产精品激情| 国产视频观看一区| 国产日韩专区| 国产精品va在线| 激情综合视频| 91久久线看在观草草青青| 国产精品丝袜xxxxxxx| 国产一区二区三区在线观看精品| 亚洲国产一区二区三区青草影视| 狠狠色综合色区| 午夜精品短视频| 一区二区三区在线高清| 亚洲一本大道在线| 久久人人97超碰人人澡爱香蕉| 亚洲精品视频二区| 日韩亚洲精品视频| 欧美日韩裸体免费视频| 国产精自产拍久久久久久蜜| 欧美日韩一区二区精品| 亚洲一级影院| 国产综合一区二区| 激情成人综合| 国产精品网站在线观看| 亚洲一区二区三区涩| 欧美呦呦网站| 中国日韩欧美久久久久久久久| 黄色成人在线免费| 欧美三级日本三级少妇99| 亚洲三级影片| 狠狠色伊人亚洲综合网站色| 亚洲黄色影片| 99riav久久精品riav| 欧美破处大片在线视频| 欧美一区2区三区4区公司二百| 欧美国产日韩在线观看| 亚洲日本国产| 久久精品国产69国产精品亚洲| 激情久久久久| 国产精品盗摄久久久| 久久久无码精品亚洲日韩按摩| 99精品久久免费看蜜臀剧情介绍| 西西裸体人体做爰大胆久久久| 欧美成人综合在线| 一区二区三区在线不卡| 久久九九国产精品怡红院| 亚洲国产精品久久| 亚洲最新视频在线播放| 99精品国产热久久91蜜凸| 女同性一区二区三区人了人一| 欧美日韩国产123区| 国产精品高潮呻吟久久av黑人| 黄色一区三区| 黄色av成人| 欧美日本一区二区视频在线观看| 久久欧美中文字幕| 黑人中文字幕一区二区三区| 影音先锋亚洲一区| 欧美精品播放| 国产精品视频观看| 亚洲一区黄色| 国产一区二区欧美| 在线观看日韩av电影| 老色批av在线精品| 国产精品进线69影院| 亚洲天堂免费在线观看视频| 亚洲图片欧洲图片日韩av| 久久久夜色精品亚洲| 激情综合色综合久久综合| 国产精品扒开腿做爽爽爽软件| 亚洲午夜精品久久久久久app| 欧美日韩国产二区| 亚洲国产美女久久久久| 欧美日韩一区二区三区在线看| 国产自产2019最新不卡| 国产精品女人久久久久久| 亚洲精品视频在线观看网站| 国产精品久久波多野结衣| 国产精品一区在线观看你懂的| 一本色道久久88综合日韩精品| 久久精品视频导航| 欧美精品激情blacked18| 一区二区三区日韩| 欧美在线视频二区| 欧美日韩国产一级| 久久久久久久久蜜桃| 国产精品xxxav免费视频| 亚洲欧美日韩成人高清在线一区| 精品成人一区二区| 国内精品99| 久久久免费精品| 91久久线看在观草草青青| 亚洲国产综合在线| 国产日韩av一区二区| 欧美日韩一区二区三区四区五区| 欧美日本中文字幕| 亚洲影院污污.| 亚洲黄色小视频| 99国产精品久久久久老师| 91久久国产综合久久蜜月精品| 亚洲国产成人在线播放| 欧美精品观看| 亚洲黄色一区二区三区| 亚洲欧美日本国产专区一区| 久久久久久有精品国产| 亚洲黄色尤物视频| 国产精品三级视频| 欧美+亚洲+精品+三区| 亚洲香蕉网站| 黄色亚洲免费| 欧美一区二区三区四区在线观看| 亚洲午夜成aⅴ人片| 国精品一区二区| 欧美不卡福利| 99精品免费| 久久永久免费| 欧美成人激情视频| 欧美超级免费视 在线| 亚洲国产成人porn| 亚洲视频欧美视频| 伊大人香蕉综合8在线视| 亚洲小说区图片区| 久久最新视频| 一本色道久久综合精品竹菊| 性欧美暴力猛交另类hd| 在线观看视频欧美| 日韩亚洲欧美在线观看| 亚洲欧洲另类| 91久久精品一区二区别| 久久五月天婷婷| 美女脱光内衣内裤视频久久影院| 欧美老女人xx| 美女爽到呻吟久久久久| 欧美1级日本1级| 国产一区二区成人久久免费影院| 一本色道久久综合狠狠躁篇的优点| 欧美日韩在线视频首页| 欧美11—12娇小xxxx| 亚洲图片欧美一区| 国产精品久久久一本精品| 久久9热精品视频| 国产精品久久久久一区二区三区共| 久久成人亚洲| 欧美性开放视频| 国语自产精品视频在线看8查询8| 亚洲欧美一区二区在线观看| 欧美高清你懂得| 欧美在线播放一区二区| 亚洲视频欧美在线| 欧美三级视频| 欧美一级视频精品观看| 欧美精品 日韩| 亚洲天堂成人在线观看| 久久亚裔精品欧美| 亚洲免费影视第一页| 欧美亚洲在线播放| 欧美日韩久久久久久| 乱人伦精品视频在线观看| 欧美色一级片| 国产精品久久久久婷婷| 久久99在线观看| 嫩模写真一区二区三区三州| 久久综合狠狠综合久久综合88| 国产欧美一区二区精品忘忧草| 久久国产一二区| 亚洲美女在线观看| 国产日韩欧美视频在线| 亚洲精品视频一区二区三区| 小黄鸭精品aⅴ导航网站入口| 欧美在线观看你懂的| 国产精品色婷婷久久58| 国产精品毛片va一区二区三区| 欧美激情第六页| 国产精品久久| 国产日韩欧美在线播放不卡| 亚洲国产精品免费| 蜜臀av一级做a爰片久久| 欧美成年人视频| 欧美成人精品h版在线观看| 亚洲国产视频直播| 国产亚洲一区二区三区在线观看| 先锋a资源在线看亚洲| 欧美一级二区| 国产日韩亚洲欧美综合| 久久婷婷色综合| 国产精品午夜视频| 午夜精品亚洲一区二区三区嫩草| 国产欧美日韩免费看aⅴ视频| 亚洲国产精品电影在线观看| 国产精品久在线观看| 欧美日韩1区2区3区| 国产精品永久免费在线| 久久精品国产免费看久久精品| 国模私拍一区二区三区| 夜色激情一区二区| 国产精品视频内| 亚洲精品乱码| 蜜臀av一级做a爰片久久| 亚洲影音一区| 欧美在线观看网址综合| 亚洲国产一区二区视频| 久久福利影视| 欧美一区二区视频在线观看2020| 国产日本欧美在线观看| 欧美午夜电影网| 国产午夜亚洲精品理论片色戒| 亚洲影视在线| 亚洲免费av片| 欧美wwwwww| 久久这里只精品最新地址| 欧美一区二区精品在线| 亚洲一二三区视频在线观看| 999亚洲国产精| 久久久综合免费视频| 欧美三级精品| 欧美日韩另类国产亚洲欧美一级| 亚洲欧美日本视频在线观看| 麻豆成人小视频| 国产亚洲激情视频在线| 亚洲三级视频| 黄色小说综合网站| 蜜月aⅴ免费一区二区三区| 一区二区三区四区国产| 一本色道久久综合一区| 欧美性大战久久久久久久| 国产婷婷精品| 在线观看日韩一区| 国产亚洲一级| 欧美高清影院| 国产精品xxxav免费视频| 欧美午夜精品久久久久久超碰| 久久青草福利网站| 亚洲免费播放| 亚洲精品在线观看视频| 欧美电影免费| 老司机午夜免费精品视频| 欧美三级乱码| 久久伊人免费视频| 国产又爽又黄的激情精品视频| 亚洲一区二区三区久久| 国产精品永久免费观看| 欧美视频一区二区| 久久精品视频亚洲| 国产欧美日韩亚洲一区二区三区| 国产网站欧美日韩免费精品在线观看| 影音国产精品| 欧美黄污视频| 国产欧美一区二区三区在线看蜜臀| 亚洲大黄网站| 国产精品久久久久久久久| 久久久久在线| 六月天综合网| 欧美日韩三级视频| 中国亚洲黄色| 欧美日韩亚洲综合在线| 在线日韩欧美视频| 国产视频综合在线| 国模私拍一区二区三区| 91久久嫩草影院一区二区|