久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区

以文本方式查看主題

-  曙海教育集團(tuán)論壇  (http://m.rfoamep.cn/bbs/index.asp)
--  VxWorks 應(yīng)用開(kāi)發(fā)  (http://m.rfoamep.cn/bbs/list.asp?boardid=38)
----  實(shí)時(shí)操作系統(tǒng)VxWorks下電子海圖系統(tǒng)打印功能的實(shí)現(xiàn)  (http://m.rfoamep.cn/bbs/dispbbs.asp?boardid=38&id=1959)

--  作者:wangxinxin
--  發(fā)布時(shí)間:2010-12-1 11:34:46
--  實(shí)時(shí)操作系統(tǒng)VxWorks下電子海圖系統(tǒng)打印功能的實(shí)現(xiàn)
1 前 言

  電子海圖系統(tǒng)是一種把需要向航海人員顯示和解釋的各種各樣信息融成一體的實(shí)時(shí)導(dǎo)航系統(tǒng),是地理信息系統(tǒng)在艦船組合導(dǎo)航系統(tǒng)中的重要應(yīng)用,被認(rèn)為是繼雷達(dá)/ARPA之后在艦船導(dǎo)航方面又一項(xiàng)偉大的技術(shù)革命。與簡(jiǎn)單地用顏色顯示的紙海圖相比,電子海圖系統(tǒng)包括更多的使用簡(jiǎn)單、操作容易的地理和文字信息。作為一種自動(dòng)判定儀器,它能夠連續(xù)測(cè)定船舶相對(duì)于陸地、圖示物標(biāo)、導(dǎo)航標(biāo)志和不可見(jiàn)礙航物的位置,對(duì)海上航行、安全和商業(yè)都有重要意義。

  VxWorks是一種嵌入式的實(shí)時(shí)操作系統(tǒng)。將應(yīng)用較為廣泛的電子海圖系統(tǒng)移植到VxWorks操作系統(tǒng)下的主要原因有兩個(gè):一是VxWorks系統(tǒng)的實(shí)時(shí)性,能夠很好的滿足導(dǎo)航系統(tǒng)實(shí)時(shí)性的要求;二是基于信息安全方面的考慮,海圖系統(tǒng)要求一種保密性好、沒(méi)有漏洞的操作系統(tǒng),使用VxWorks操作系統(tǒng),程序開(kāi)發(fā)者可以進(jìn)行最底層的程序開(kāi)發(fā),能夠完全控制系統(tǒng)的資源,確保海圖信息的安全。

2 電子海圖系統(tǒng)打印功能的總體設(shè)計(jì)思路

  在VxWorks操作系統(tǒng)中,實(shí)現(xiàn)電子海圖信息打印功能設(shè)計(jì)的總體思路是:首先將打印內(nèi)容,包括圖像和報(bào)表,轉(zhuǎn)換成恰當(dāng)格式的圖像文件,如PostScript文件,而后對(duì)于沒(méi)有內(nèi)置PostScript語(yǔ)言解釋器的打印機(jī),需要將PostScript語(yǔ)言解釋成打印機(jī)可以識(shí)別的語(yǔ)言,最后把圖像文件輸送到打印機(jī)。

  本文介紹基于內(nèi)置有PostScript語(yǔ)言解釋器的HP LaserJet 1200打印機(jī),在VxWorks操作系統(tǒng)下,完成電子海圖信息打印功能的實(shí)現(xiàn)過(guò)程。

3 打印驅(qū)動(dòng)

  打印機(jī)驅(qū)動(dòng)程序中的各個(gè)函數(shù)的實(shí)現(xiàn):

  (1)基本的I/O函數(shù)的實(shí)現(xiàn)
  根據(jù)打印機(jī)并口的特點(diǎn),驅(qū)動(dòng)程序中要實(shí)現(xiàn)的基本的I/O函數(shù)應(yīng)該是lptOpen(…)、lptRead(…)、lptWrite(…)和lptIoctl(…)。這4個(gè)基本函數(shù)的聲明分別是:

  LOCAL int lptOpen(LPT_DEV*pDev,char*name,int mode);  LOCAL int lptRead(LPT_DEV*pDev,char*pBuf,int size);
  LOCAL int lptWrite(LPT_DEV*pDev,char*pBuf,int size);
  LOCAL STATUS lptIoctl(LPT_DEV*pDev,int function,int arg);  其中LPT_DEV結(jié)構(gòu)的定義為:
  typedef struct lptDev
  {
  DEV_HDR devHdr;
  BOOL created;/*TRUE if this device has been created*/
  BOOL autofeed;/* TRUE if enable autofeed */
  BOOL inservice;/* TRUE if interrupt in service */
  USHORT data; /* data register */
  USHORT stat; /* status register */
  USHORT ctrl; /* control register */
  int intCnt;/* interrupt count */
  int retryCnt; /* retry count */
  int busyWait; /* loop count for BUSY wait */
  int strobeWait;/* loop count for STROBE wait */
  int timeout; /* timeout second for syncSem */
  int intLevel; /* interrupt level */
  SEMAPHORE muteSem;/* mutex semaphore */
  SEMAPHORE syncSem;/* sync semaphore */
} LPT_DEV

  DEV_HDR是所有設(shè)備的頭結(jié)構(gòu),是由VxWorks系統(tǒng)定義的,定義為:

  typedef struct/* DEV_HDR device header for all device structures*/
{
  DL_NODE node; /* device linked list node */
  short drvNum; /* driver number for this device */
  char * name; /* device name */
} DEV_HDR

  (2)設(shè)備的硬件初始化函數(shù)xxDrv(…)的實(shí)現(xiàn)

  該函數(shù)的聲明為:
  STATUS lptDrv(int channels, LPT_RESOURCE *pResource)

  其中,參數(shù)channels 為打印并口的通道號(hào);參數(shù)pResource是指向結(jié)構(gòu)LPT_RESOURCE的指針,結(jié)構(gòu)LPT_RESOURCE的定義為:

  typedef struct lptResource /* LPT_RESOURCE */
{
  int ioBase;/* IO base address */
  int intVector;/* interrupt vector */
  int intLevel; /* interrupt level */
  BOOL autofeed;/* TRUE if enable autofeed */
  int busyWait; /* loop count for BUSY wait */
  int strobeWait;/* loop count for STROBE wait */
  int retryCnt; /* retry count */
  int timeout; /* timeout second for syncSem */
}LPT_RESOURCE;

  該函數(shù)lptDrv(int channels, LPT_RESOURCE *pResource)完成了打印機(jī)并口的初始化,其中調(diào)用函數(shù)intConnect(…)和iosDrvInstall(…)的具體形式為:

  (void)intConnect((VOIDFUNCPTR*)INUM_TO_IVEC(pResource->intVector),
  (VOIDFUNCPTR)lptIntr, (int)pDev);
  lptDrvNum = iosDrvInstall (lptOpen, (FUNCPTR) NULL, lptOpen,
  (FUNCPTR) NULL, lptRead, lptWrite, lptIoctl);

  (3)設(shè)備的創(chuàng)建函數(shù)xxDevCreate(…)的實(shí)現(xiàn)

  該函數(shù)的聲明為:
  STATUS lptDevCreate (char *name, int channel)

  該函數(shù)將設(shè)備的創(chuàng)建標(biāo)志置為T(mén)RUE,然后調(diào)用函數(shù)iosDevAdd (&lptDev[annel],devHdr.name, lptDrvNum) 將創(chuàng)建的設(shè)備加入I/O系統(tǒng)中。

  對(duì)于打印驅(qū)動(dòng)程序,重點(diǎn)在于函數(shù)lptWrite(…)的編寫(xiě),這個(gè)函數(shù)的實(shí)現(xiàn)可采用兩種方式。一種是中斷方式,即將控制寄存器中的允許中斷位置為1,這樣,打印機(jī)每打印輸出一個(gè)字符后,立即向主機(jī)發(fā)出中斷請(qǐng)求信號(hào),要求發(fā)送下一個(gè)字符;主機(jī)方面只要在中斷服務(wù)程序中實(shí)現(xiàn)數(shù)據(jù)傳輸即可,而不必循環(huán)查詢打印機(jī)的“忙”信號(hào)。另一種是查詢方式,用這種方式時(shí),主機(jī)不停地測(cè)試打印機(jī)的“忙”信號(hào),當(dāng)檢測(cè)到打印機(jī)不忙時(shí),便向其發(fā)送打印數(shù)據(jù),若打印忙,則主機(jī)必須等待,直到打印機(jī)不忙。

  根據(jù)編寫(xiě)打印機(jī)驅(qū)動(dòng)程序的兩種方式,選用查詢方式,其流程如圖1。

圖片點(diǎn)擊可在新窗口打開(kāi)查看

4 PostScript文件的生成

  在VxWorks操作系統(tǒng)的開(kāi)發(fā)環(huán)境Tornado下,軟件包ZINC中的ZafPrinter類及ZafDisplay類提供的函數(shù)可完成PostScript文件的生成。ZafPrinter類繼承ZafDisplay 類而來(lái),因此,在ZafPrinter 中除了繼承來(lái)的圖形顯示函數(shù)之外,還定義了與打印機(jī)接口相關(guān)的函數(shù),如BeginJob(),EndJob(),BeginPage(),EndPage()等。

  在用ZINC自帶的程序生成PostScript文件時(shí),需注意以下幾點(diǎn):

  (1)將自定義的顏色值加入顏色表中,在i_print.cpp文件(在目錄…\\Tornado\\target\\src\\zinc\\generic下)中,原來(lái)的顏色表定義為:

  static unsigned long psColorTable[16]=
  {
  0x00000000L, // 0-ZAF_CLR_BLACK
  0x00000080L, // 1-ZAF_CLR_BLUE
  0x00008000L, // 2-ZAF_CLR_GREEN
  0x00008080L, // 3-ZAF_CLR_CYAN
  0x00800000L, // 4-ZAF_CLR_RED
  0x00800080L, // 5-ZAF_CLR_MAGENTA
  0x00808000L, // 6-ZAF_CLR_BROWN
  0x00C0C0C0L, // 7-ZAF_CLR_LIGHTGRAY
  0x00808080L, // 8-ZAF_CLR_DARKGRAY
  0x000000FFL, // 9-ZAF_CLR_LIGHTBLUE
  0x0000FF00L, // 10-ZAF_CLR_LIGHTGREEN
  0x0000FFFFL, // 11-ZAF_CLR_LIGHTCYAN
  0x00FF0000L, // 12-ZAF_CLR_LIGHTRED
  0x00FF00FFL, // 13-ZAF_CLR_LIGHTMAGENTA
  0x00FFFF00L, // 14-ZAF_CLR_YELLOW
  0x00FFFFFFL, // 15-ZAF_CLR_WHITE
  };

  保留原有的16種顏色,再增加48種海圖中的顏色:

  0x00000000, 0x00000080, 0x0000b400, 0x0080ffff,
  0x00d20000, 0x00ff00ff, 0x00dc8000, 0x00c0c0c0,
  0x00ffc7ab, 0x000000ff, 0x0000ff00, 0x00c8ffff,
  0x00ff0000, 0x00ff96ff, 0x00ffffc0, 0x00ffffff,
  0x00ff02fd, 0x00ff02fd, 0x00ff02fd, 0x00ff02fd,
  0x00ff02fd, 0x00ff02fd, 0x00ff02fd, 0x00ff02fd,
  0x00ff02fd, 0x00ff02fd, 0x00ff02fd, 0x00ff02fd,
  0x00ff02fd, 0x00ff02fd, 0x00ff02fd, 0x00ff02fd,
  0x00000000, 0x000000ff, 0x0033aa00, 0x0060c0c0,
  0x00b03030, 0x00c040c0, 0x00804040, 0x00a0a0a0,
  0x00404040, 0x008080ff, 0x0080ff80, 0x0016edfe,
  0x00e02020, 0x00e010e0, 0x00ffff80, 0x00ffffff,

  這樣顏色表中共有64種可用顏色。

  同時(shí)將
  for(index = 0; index < 16; index++)
    colorTable[index]= psColorTable[index];

  改為:
  for(index = 0; index < 64; index++)
  colorTable[index]= psColorTable[index];

  (2)為使生成的PostScript文件盡可能的小,對(duì)原來(lái)海圖的畫(huà)圖程序做了一點(diǎn)改動(dòng)。在原程序中,多邊形的繪制是通過(guò)畫(huà)兩點(diǎn)線完成的,這樣,生成PostScript文件比較大,可將其改為直接調(diào)用畫(huà)多邊形的函數(shù)Polygon()。經(jīng)過(guò)這樣的改動(dòng),生成的PostScript文件減小了很多,原來(lái)的一頁(yè)圖生成的PostScript文件為3.65M,改動(dòng)后不足1M。

5 PostScript 文件在VxWorks操作系統(tǒng)下的打印輸出

  要使用打印驅(qū)動(dòng)程序,首先要調(diào)用函數(shù)lptDevCreate(char*name,intchannel)為L(zhǎng)PT端口創(chuàng)建設(shè)備,其中端口號(hào)由參數(shù)channel指定,創(chuàng)建的設(shè)備的名稱為name。只能為一個(gè)端口號(hào)創(chuàng)建一個(gè)設(shè)備。
  創(chuàng)建設(shè)備成功之后,主機(jī)就可以向打印機(jī)發(fā)送PostScript文件了,其程序流程如圖2。

圖片點(diǎn)擊可在新窗口打開(kāi)查看

6 漢字打印輸出的實(shí)現(xiàn)

  在VxWorks操作系統(tǒng)下,實(shí)現(xiàn)電子海圖中漢字的顯示和打印輸出功能的基本思路是:利用Windows操作系統(tǒng)中的TrueType字庫(kù),根據(jù)需要顯示漢字的Unicode編碼,在TrueType字庫(kù)中找到該漢字的相應(yīng)信息,按照TrueType字庫(kù)中存儲(chǔ)的信息,將漢字顯示或打印輸出。

  TrueType字庫(kù)由很多表組成,它是用一些閉合的輪廓線來(lái)描述每個(gè)字符的。若能夠訪問(wèn)TrueType字庫(kù)獲得相應(yīng)漢字的描述信息,就能將漢字畫(huà)出來(lái)。對(duì)于TrueType字庫(kù)的訪問(wèn),網(wǎng)上有開(kāi)放的資源可以實(shí)現(xiàn),這就是FreeType2,它為應(yīng)用程序訪問(wèn)字庫(kù)文件提供了統(tǒng)一的接口,支持的格式包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。要使用FreeType, 就要在相應(yīng)的操作系統(tǒng)下對(duì)源代碼進(jìn)行編譯,生成一個(gè)庫(kù)文件,然后在應(yīng)用程序中調(diào)用相應(yīng)的API庫(kù)函數(shù)。

  通過(guò)FreeType提供的庫(kù)函數(shù),應(yīng)用程序可以訪問(wèn)TrueType字庫(kù),根據(jù)所得到的TrueType漢字信息,就能實(shí)現(xiàn)TrueType字體的顯示或打印輸出。但是TrueType字庫(kù)的訪問(wèn)是通過(guò)Unicode編碼進(jìn)行的,也就是說(shuō),只有獲得了字符的Unicode編碼,才能在TrueType字庫(kù)中得到該字符的描述信息。在電子海圖程序中,字符的Unicode編碼的獲得是通過(guò)查表實(shí)現(xiàn)的。所謂的查表,是指將國(guó)際漢字字符集中所有字符的Unicode編碼,存在一個(gè)數(shù)組unsigned long gb2312_uni_data[87][94],根據(jù)字符的區(qū)位碼就可以得到相應(yīng)的Unicode編碼。例如區(qū)號(hào)為qh,位號(hào)為wh的字符的Unicode編碼就是數(shù)組元素gb2312_uni_data[qh-1][wh-1]的值。

  保存所有字符的Unicode編碼的數(shù)組gb2312_uni_data[87][94]是在Windows操作系統(tǒng)下轉(zhuǎn)換得到的。具體的做法是將國(guó)際漢字字符集中的所有字符按照一定的格式保存成文本文件,然后從文件中讀出每個(gè)字符,調(diào)用函數(shù)MultiByteToWideChar(…)將其轉(zhuǎn)換成Unicode編碼,并將其保存。

  根據(jù)TrueType字庫(kù)中字符的信息,顯示或打印輸出字符有兩種途徑:一種是調(diào)用FreeType的API函數(shù)得到相應(yīng)字符的輪廓線,然后將其填充;另一種是調(diào)用FreeType的API函數(shù)直接得到字符的位圖,再調(diào)用相應(yīng)操作系統(tǒng)中的打點(diǎn)函數(shù)實(shí)現(xiàn)位圖的顯示。由于第二種方法實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單,并且海圖系統(tǒng)中的漢字不是很多,所以在海圖程序中使用的是第二種方法。

  在獲得相應(yīng)漢字的字形位圖信息的基礎(chǔ)上,實(shí)現(xiàn)漢字打印輸出功能的關(guān)鍵是如何使用PostScript語(yǔ)言描述相應(yīng)漢字字形的位圖信息。在程序的設(shè)計(jì)中,通過(guò)畫(huà)1個(gè)像素長(zhǎng)度的直線來(lái)實(shí)現(xiàn)點(diǎn)的輸出,然后用一系列的點(diǎn)輸出位圖信息。其中,點(diǎn)的輸出用PostScript語(yǔ)言表示為:

  x y moveto
  x+1 y lineto

  根據(jù)漢字橫多豎少的特點(diǎn),可以對(duì)以上產(chǎn)生的PostScript文件進(jìn)行優(yōu)化,如果N點(diǎn)在一條橫線上,就直接畫(huà)N長(zhǎng)度的直線,用PostScript語(yǔ)言表示為:

  x y moveto
  x+N y line to

  這樣,就將原來(lái)的N條PostScript語(yǔ)句轉(zhuǎn)化為1條語(yǔ)句,從而減少了PostScript文件的長(zhǎng)度。

7 結(jié)束語(yǔ)

  VxWorks實(shí)時(shí)操作系統(tǒng)的特點(diǎn)決定了在此操作系統(tǒng)中開(kāi)發(fā)驅(qū)動(dòng)程序的重要性。根據(jù)需要配置相應(yīng)的設(shè)備,并實(shí)現(xiàn)硬件的驅(qū)動(dòng),是VxWorks系統(tǒng)中進(jìn)行軟件設(shè)計(jì)與開(kāi)發(fā)的前提。本文介紹的電子海圖系統(tǒng)打印功能的總體設(shè)計(jì)思想及實(shí)現(xiàn)方法,已在哈爾濱工程大學(xué)研制的某型電子海圖系統(tǒng)的二次開(kāi)發(fā)中得到應(yīng)用。


久久精品在这里_成人99免费视频_国产激情视频一区二区在线观看_国产伦精品一区二区三区免费 _亚洲午夜免费福利视频_色狠狠色狠狠综合_av在线综合网_91毛片在线观看_欧美视频一区二区在线观看_极品美女销魂一区二区三区免费_国产亚洲欧美激情_在线免费观看不卡av_日韩不卡一区二区三区_91精品国产麻豆国产自产在线_亚洲国产精品一区二区久久恐怖片_a4yy欧美一区二区三区
神马影院午夜我不卡影院| 黑人巨大精品欧美一区| 精品国产乱码久久久久久浪潮| 欧美日韩精品一区二区在线播放| 欧日韩精品视频| 欧美欧美欧美欧美| 欧美一区午夜精品| 亚洲精品一区二区三区蜜桃下载| 久久精品亚洲精品国产欧美| 国产午夜精品福利| 亚洲视频一区在线| 亚洲成人精品影院| 国产一区在线观看麻豆| 91一区二区在线| 久久久一本精品99久久精品66| 青青草原成人| 色婷婷亚洲综合| 日韩欧美国产综合一区| 国产视频911| 亚洲高清在线精品| 国产精品69毛片高清亚洲| 成人久久18免费网站漫画| 日本不卡二区| 欧美日韩免费视频| 国产欧美va欧美不卡在线| 一区二区三区欧美激情| 九色|91porny| 成人免费视频网站入口| 中文字幕中文字幕99 | 555www色欧美视频| 久久精品视频在线看| 亚洲免费观看高清完整| 久久99热狠狠色一区二区| av电影成人| 91国产视频在线观看| 久久久一区二区| 日日摸夜夜添夜夜添精品视频| 国产大陆亚洲精品国产| 精品国产一区二区三区日日嗨| 在线欧美日韩国产| 国产精品美女久久久久久久| 青青草国产精品亚洲专区无| 99re66热这里只有精品3直播| 亚洲在线色站| 欧美国产精品专区| 看电视剧不卡顿的网站| 精品欧美一区二区久久久伦| 欧美日韩色一区| 一区二区三区四区五区视频在线观看| 国产乱人伦精品一区二区在线观看| 精品一区二区三区自拍图片区| 欧美日韩黄视频| 亚洲免费视频中文字幕| av在线一区二区| 欧洲一区二区av| 亚洲精品久久久蜜桃| 99久久99久久久精品齐齐| 91黄色小视频| 一区二区三区美女视频| 91麻豆国产在线观看| 欧美日韩精品一区二区三区| 亚洲黄色片在线观看| 91在线观看一区二区| 欧美色图激情小说| 亚洲一区二区视频在线观看| 99re资源| 日韩精品综合一本久道在线视频| 亚洲123区在线观看| 国产一区二区三区色淫影院| 日韩精品中文字幕在线不卡尤物| 日本伊人精品一区二区三区观看方式| 久久久久久草| 国产精品久久久99| 91免费看片在线观看| 777色狠狠一区二区三区| 午夜精品久久久久久久久久| 欧美黑人3p| 国产精品热久久久久夜色精品三区| 国产成a人亚洲精品| 欧美日韩亚洲丝袜制服| 香蕉久久夜色精品国产使用方法 | 亚洲欧美色综合| 国产高清自拍99| 精品国产a毛片| 福利电影一区二区三区| 91麻豆精品91久久久久久清纯| 免播放器亚洲一区| 色哟哟在线观看一区二区三区| 亚洲曰韩产成在线| 麻豆久久久9性大片| 中文字幕制服丝袜成人av| 国产精品区一区二区三含羞草| 久久久99精品免费观看| 91精品久久久久久蜜桃| 久久综合九色综合97婷婷 | 成人免费视频网站| 国产亚洲一二三区| 91丨九色porny丨蝌蚪| 欧美videos大乳护士334| 国产精品系列在线观看| 69久久99精品久久久久婷婷| 久久疯狂做爰流白浆xx| 欧美在线色视频| 激情小说欧美图片| 欧美一区二区精品在线| 国产91高潮流白浆在线麻豆| 精品久久久三级丝袜| 91在线porny国产在线看| 久久精品男人天堂av| 国产麻豆乱码精品一区二区三区| 欧美极品美女视频| 欧美三日本三级少妇三99| 亚洲.国产.中文慕字在线| 在线观看一区二区精品视频| 黄网站免费久久| 日韩一区二区免费在线电影| 99久久99久久精品免费看蜜桃 | 美女视频黄 久久| 欧美亚洲一区三区| 成人一级视频在线观看| 国产亚洲污的网站| 欧美日本亚洲| 美女视频黄 久久| 精品国产伦一区二区三区观看体验| 91视频观看免费| 亚洲激情自拍视频| 欧美在线啊v一区| 成人免费不卡视频| 综合久久一区二区三区| 亚洲一区二区精品在线观看| 国产一区二区在线观看视频| 欧美大尺度电影在线| 国产伦精品一区二区三区照片 | 国产成人无遮挡在线视频| 久久亚洲影视婷婷| 久久大片网站| 狠狠狠色丁香婷婷综合久久五月| 精品电影一区二区三区| 乱色588欧美| 久久99这里只有精品| 中文字幕欧美日本乱码一线二线| 日本精品二区| 国产一区二区三区四区在线观看| 久久久久久影视| 伊人久久av导航| 91蜜桃免费观看视频| 亚洲va韩国va欧美va| 日韩欧美一级片| 亚洲一区二区三区四区中文| 波多野结衣亚洲| 亚洲一区二区成人在线观看| 欧美在线高清视频| av一区二区三区免费| 日韩不卡一二三区| 国产欧美视频一区二区三区| 色噜噜狠狠色综合欧洲selulu| 91视频免费进入| 久久精品免费看| 亚洲精品写真福利| 精品av综合导航| 日本久久电影网| 国产精品成人观看视频免费| 亚洲成人先锋电影| 日本一区二区免费在线观看视频 | 在线观看欧美黄色| 91视频99| 国产美女精品人人做人人爽| 亚洲色欲色欲www| 日韩欧美一级片| 色欧美片视频在线观看在线视频| 国产v亚洲v天堂无码| 国产伦精品一区二区三区视频青涩| 日本一区免费视频| 欧美自拍丝袜亚洲| 农村寡妇一区二区三区| 成人晚上爱看视频| 青青草97国产精品免费观看 | 视频一区视频二区在线观看| 国产亚洲污的网站| 制服丝袜亚洲色图| 中日韩在线视频| 久久艳妇乳肉豪妇荡乳av| 成人免费看视频| 精久久久久久久久久久| 亚洲影视在线播放| ...av二区三区久久精品| 日韩精品一区二区三区中文不卡| 色域天天综合网| 日本一区免费看| 久久亚洲午夜电影| 懂色av一区二区三区在线播放| 国产高清不卡二三区| 蜜臀av一区二区在线免费观看| 亚洲一区二区三区中文字幕在线| 中文字幕一区三区| 亚洲欧美在线高清| 国产精品视频你懂的| 久久尤物电影视频在线观看| 6080日韩午夜伦伦午夜伦| 欧美日韩一区二区三区视频|