Yes, that's right. The meta method is generated only when necessary.
Generated types now get exported and the generated .jl file name matches 
the module name.

- Tanmay.


On Sunday, March 2, 2014 11:09:53 PM UTC+5:30, Uwe Fechner wrote:
>
> Ok, if I look at the proto definition:
>
> message PositionECEF {            // position of the kite in the "Earth 
> Centered Earth Fixed" reference frame
>   optional float latitude   = 1;  // -90.0 ..90.0,     unit="deg" 
> latitude,  angular distance of the location
>                                   // south or north of the Equator
>   optional float longitude  = 2;  // -180.0 .. 180.0   unit="deg" 
> longitude, east-west position of a point on
>                                   // the Earth's surface
>   optional float altitude   = 3;  // -500.0 .. 5000.0  unit="m"   altitude 
> above WGS-84 elipsoid
> }
>
> message OrientationEX {       // Euler angles in earth reference frame
>   required float phi   = 1;   // roll  angle, -180.0 .. 180.0,        
> unit="deg"
>   required float theta = 2;   // pitch angle, -90.0 ..   90.0         
> unit="deg"
>   required float psi   = 3;   // yaw/ heading angle, -180.0 .. 180.0, 
> unit="deg" 
> }
> then I see that in the type OrientationEX all fields are "required", while 
> in
> PositionECEF they are optional. This makes sense now.
>
> Uwe
>
> On Sunday, March 2, 2014 6:34:10 PM UTC+1, Ivar Nesje wrote:
>>
>> I would guess (from the 
>> README<https://github.com/tanmaykm/Protobuf.jl#protocol-buffer-metadata>) 
>> that the meta line is used for metadata about the type. Probably the meta 
>> function is not shown when object follows default behaviour.
>>
>> Ivar
>>
>> kl. 18:26:52 UTC+1 søndag 2. mars 2014 skrev Uwe Fechner følgende:
>>>
>>> Hi, if I look at the generated code, for example:
>>> type PositionECEF
>>>     latitude::Float32
>>>     longitude::Float32
>>>     altitude::Float32
>>>     PositionECEF() = new()
>>> end #type PositionECEF
>>>
>>> type OrientationEX
>>>     phi::Float32
>>>     theta::Float32
>>>     psi::Float32
>>>     OrientationEX() = new()
>>> end #type OrientationEX
>>> meta(t::Type{OrientationEX}) = meta(t, Symbol[:phi,:theta,:psi], Int[], 
>>> Dict{Symbol,Any}())
>>>
>>> then I see that some type definitions are followed by a "meta" line and 
>>> some are not.
>>> What is the use of this "meta" line?
>>>
>>> Regards: Uwe
>>>
>>> On Saturday, March 1, 2014 8:15:19 PM UTC+1, Tanmay K. Mohapatra wrote:
>>>>
>>>> I have now implemented the .proto parser and code generator. Was able 
>>>> to generate Julia code for the file "asset.system.proto".
>>>> Do try out  https://github.com/tanmaykm/Protobuf.jl and give your 
>>>> feedback.
>>>> It is not yet a registered package, but shall do it in a couple of days.
>>>>
>>>> Regards,
>>>> Tanmay
>>>>
>>>>
>>>> On Monday, February 24, 2014 12:33:23 AM UTC+5:30, Uwe Fechner wrote:
>>>>>
>>>>> That's a good start.
>>>>>
>>>>> Perhaps the following file could be used as test case:
>>>>>
>>>>> https://bitbucket.org/ufechner/freekitesim/src/1df579321570a3c7fa2c157416f7326876bb9dda/asset/asset.system.proto?at=master
>>>>>
>>>>> Is there already a piece of code that can parse .proto files in Julia?
>>>>>
>>>>> Regards:
>>>>>
>>>>> Uwe
>>>>>
>>>>> On Sunday, February 23, 2014 6:09:22 PM UTC+1, Tanmay K. Mohapatra 
>>>>> wrote:
>>>>>>
>>>>>> I have started working on a pure Julia Protobuf implementation here: 
>>>>>> https://github.com/tanmaykm/Protobuf.jl. It's in very early stages, 
>>>>>> but I plan to focus on it for the next few weeks. I have put up a few 
>>>>>> lines 
>>>>>> now about how I plan to develop it in the readme. Would love to hear 
>>>>>> what 
>>>>>> you think of it.
>>>>>>
>>>>>> - Tanmay
>>>>>>
>>>>>> On Sunday, February 23, 2014 10:14:27 PM UTC+5:30, Amit Murthy wrote:
>>>>>>>
>>>>>>> You may want to check out Tanmay's 
>>>>>>> https://github.com/tanmaykm/Protobuf.jl
>>>>>>>
>>>>>>>
>>>>>>> On Sun, Feb 23, 2014 at 8:51 PM, Uwe Fechner 
>>>>>>> <[email protected]>wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> our control and simulation software is highly modular, and we use 
>>>>>>>> google protocol buffer
>>>>>>>> encoded messages over ZeroMQ sockets to communicate.
>>>>>>>>
>>>>>>>> What is the best approach to send and receive protobuf encoded 
>>>>>>>> messages:
>>>>>>>>
>>>>>>>> a) using one of the C bindings; there are actually three:
>>>>>>>>     - http://spbc.sourceforge.net/
>>>>>>>>     - http://code.google.com/p/protobuf-c/
>>>>>>>>     - http://koti.kapsi.fi/jpa/nanopb/
>>>>>>>>
>>>>>>>> b) using the Python library:
>>>>>>>>     
>>>>>>>> https://developers.google.com/protocol-buffers/docs/pythontutorial
>>>>>>>>     This one is officially supported by google in contrast to the C 
>>>>>>>> bindings
>>>>>>>>
>>>>>>>> c) writing a full protobuf compiler, coder and decoder in Julia 
>>>>>>>> directly
>>>>>>>>
>>>>>>>> Any comments welcome.
>>>>>>>>
>>>>>>>> Uwe Fechner
>>>>>>>>
>>>>>>>
>>>>>>>

Reply via email to