<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
I went ahead and put in a local type.<BR>
Utime.struct_timeval is now gone.<BR>
<BR>
- Jay<BR>
<BR>
<HR id=stopSpelling>
From: jay.krell@cornell.edu<BR>To: m3devel@elegosoft.com<BR>Subject: JVideo/struct_timeval?<BR>Date: Mon, 12 Apr 2010 13:03:26 +0000<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding:0px;}
.ExternalClass body.ecxhmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
This seems wierd:<BR> <BR> <BR>C:\dev2\cm3.2\m3-ui\jvideo\src\POSIX\jvprotocol.i3(193): timestamp: Utime.struct_timeval;<BR><BR>I think they are defining a wire protocol, but embedding platform-specific types in it.<BR>How about I just change to Time.T? (64bit floating point, seconds since 1970).<BR>We could do like:<BR> <BR>C:\dev2\cm3.2\m3-ui\jvideo\src\POSIX\decunix\JVSink.m3(440): jvb.timestamp.tv_sec := signed_ntohl(hdr.timestamp.tv_sec);<BR><BR>and define it to be transferred as a network order 64bit integer (big endian LONGINT), or maybe an array of 8 bytes.<BR> <BR>Or maybe define a local struct_timeval separate from Utime that hardcodes the sizes..and maybe using LONGINT?<BR> 32bit time_t is apparently still very common, though it seems obviously a big mistake..<BR> <BR> - Jay<BR> </body>
</html>