206 lines
4.9 KiB
Plaintext
206 lines
4.9 KiB
Plaintext
/* while(running)
|
|
{
|
|
::printf("Grabbing Frame...\n");
|
|
bmpCap->grabFrame();
|
|
::Sleep(timeout);
|
|
} */
|
|
|
|
|
|
// portControl.bind(internetSocketAddress);
|
|
// acceptHandler(portControl);
|
|
// if(mPortControl.receive(stringData))stringHandler(stringData);
|
|
/* Block<String> receiveStrings;
|
|
printf("Received data...");
|
|
if(mPortControl.receive(receiveStrings))
|
|
{
|
|
for(int index=0;index<receiveStrings.size();index++)
|
|
{
|
|
printf("%s\n",receiveStrings[index].str());
|
|
}
|
|
} */
|
|
// socketControl.destroy();
|
|
// ::Sleep(TimeOut);
|
|
|
|
|
|
|
|
/*
|
|
|
|
void main(int argc,char **argv)
|
|
{
|
|
Block<DriverInfo> drivers;
|
|
SmartPointer<BmpCap> bmpCap;
|
|
SmartPointer<Control> control;
|
|
String pathOutputFileName;
|
|
int timeout;
|
|
VidReg vidReg;
|
|
|
|
if(3!=argc)
|
|
{
|
|
::printf("CAPTURE <pathimagefilename> <timeout (ms)>\n");
|
|
return;
|
|
}
|
|
::SetConsoleCtrlHandler(&handlerRoutine,true);
|
|
pathOutputFileName=argv[1];
|
|
timeout=String(argv[2]).toInt();
|
|
vidReg.setCaptureWidth(320);
|
|
vidReg.setCaptureHeight(240);
|
|
vidReg.setCaptureFile(pathOutputFileName);
|
|
vidReg.setSequencing(false);
|
|
::printf("Capture File:%s\n",vidReg.getCaptureFile().str());
|
|
::printf("Sequencing:%s\n",vidReg.getSequencing()?"true":"false");
|
|
::printf("Preview Rate:%d\n",vidReg.getPreviewRate());
|
|
::printf("Preview Width:%d\n",vidReg.getPreviewWidth());
|
|
::printf("Preview Height:%d\n",vidReg.getPreviewHeight());
|
|
::printf("Capture Width:%d\n",vidReg.getCaptureWidth());
|
|
::printf("Capture Height:%d\n",vidReg.getCaptureHeight());
|
|
::printf("Refresh:%d\n",timeout/1000);
|
|
|
|
VidCap::getDrivers(drivers);
|
|
if(!drivers.size())
|
|
{
|
|
::printf("No drivers found!\n");
|
|
return;
|
|
}
|
|
for(int index=0;index<drivers.size();index++)
|
|
{
|
|
::printf("%s\n",drivers[index].driverName().str());
|
|
}
|
|
|
|
control=::new Control();
|
|
control.disposition(PointerDisposition::Delete);
|
|
control->createControl("BUTTON","",0,Rect(0,0,320,240),::GetDesktopWindow(),100);
|
|
|
|
bmpCap=::new BmpCap(control->getHandle(),0);
|
|
bmpCap.disposition(PointerDisposition::Delete);
|
|
if(!bmpCap->connect(0))
|
|
{
|
|
::printf("Failed to connect to device '%s'\n",drivers[0].driverName().str());
|
|
return;
|
|
}
|
|
bmpCap->saveFrames(true);
|
|
while(running)
|
|
{
|
|
::printf("Grabbing Frame...\n");
|
|
bmpCap->grabFrame();
|
|
::Sleep(timeout);
|
|
}
|
|
return;
|
|
}
|
|
*/
|
|
|
|
|
|
/*
|
|
int sizeHeader=htons(mSizeHeader);
|
|
int version=htons(mVersion);
|
|
int contentLength=htons(mContentLength);
|
|
int contentType=htons(mContentType);
|
|
|
|
|
|
if(!socket.send((char*)&sizeHeader,sizeof(int)))return false;
|
|
if(!socket.send((char*)&version,sizeof(int)))return false;
|
|
if(!socket.send((char*)&contentLength,sizeof(int)))return false;
|
|
if(!socket.send((char*)&contentType,sizeof(int)))return false;
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
#include <jpeg-6b/bmpjpg.hpp>
|
|
|
|
void main(int argc,char **argv)
|
|
{
|
|
::printf("convert %s %s",argv[1],argv[2]);
|
|
ImageConverter::convert(argv[1],argv[2],75);
|
|
}
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
|
|
|
WSASystem wsaSystem;
|
|
String strOption;
|
|
|
|
|
|
|
|
if(argc!=2)
|
|
{
|
|
::printf("CapServer {server}{client}\n");
|
|
return;
|
|
}
|
|
strOption=argv[1];
|
|
::SetConsoleCtrlHandler(&handlerRoutine,true);
|
|
|
|
|
|
|
|
if(strOption=="server")
|
|
{
|
|
::printf("starting server\n");
|
|
SocketServer socketServer;
|
|
socketServer.listen("rocinante",1024);
|
|
}
|
|
else
|
|
{
|
|
INETSocketAddress internetSocketAddress;
|
|
InternetAddress internetAddress(127,0,0,1);
|
|
Socket socket;
|
|
SocketHeader socketHeader;
|
|
Array<BYTE> content;
|
|
|
|
::printf("starting client\n");
|
|
internetSocketAddress.family(PF_INET);
|
|
internetSocketAddress.port(1024);
|
|
internetSocketAddress.internetAddress(internetAddress);
|
|
if(!socket.create())
|
|
{
|
|
::printf("create failed...\n");
|
|
return;
|
|
}
|
|
if(!socket.connect(internetSocketAddress))
|
|
{
|
|
::printf("connect failed...\n");
|
|
return;
|
|
}
|
|
::printf("reading socket header...\n");
|
|
socketHeader.unmarshall(socket);
|
|
::printf("size header is %d bytes\n",socketHeader.getSizeHeader());
|
|
::printf("version is %d \n",socketHeader.getVersion());
|
|
::printf("content length is %d bytes\n",socketHeader.getContentLength());
|
|
::printf("content type is %d \n",(int)socketHeader.getContentType());
|
|
content.size(socketHeader.getContentLength());
|
|
::printf("reading content...\n");
|
|
socket.receive((char*)&content[0],content.size());
|
|
::printf("done...\n");
|
|
socket.destroy();
|
|
}
|
|
*/
|
|
|
|
|
|
|
|
socketHeader.setVersion(1);
|
|
socketHeader.setContentType(SocketHeader::ImageJPG);
|
|
socketHeader.setContentLength(0);
|
|
strPathCaptureFile.reserve(1024);
|
|
::sprintf(strPathCaptureFile,"%04d%02d%02d%02d%02d%02d%02d.jpg",
|
|
systemTime.year(),systemTime.month(),systemTime.day(),
|
|
systemTime.hour(),systemTime.minute(),systemTime.second(),
|
|
systemTime.milliseconds());
|
|
// strPathCaptureFile="image000.jpg";
|
|
mWDMCap.setCaptureFileName(strPathCaptureFile);
|
|
mWDMCap.grabFrame();
|
|
if(!openFile.open(strPathCaptureFile,FileHandle::Read,FileHandle::ShareRead))
|
|
{
|
|
socketHeader.marshall(socketControl);
|
|
}
|
|
|
|
|
|
|
|
int mSizeHeader;
|
|
int mVersion;
|
|
int mContentLength;
|
|
int mContentType;
|