Re: [Discuss-gnuradio] Question about hier block

2010-03-29 Thread Eric Blossom
On Mon, Mar 29, 2010 at 10:43:08AM +0200, Axel Belliard wrote:
> Hi,
> 
> Thanks for taking the time to reply. I changed my code to print the data
> after the constuctor. But it is still not working. I guess, I 'm doing
> something else wrong.

Have you looked at any of the qa_*.py code?
That code makes extensive use of vector_source's and vector_sink's.

Eric


> The changed code :
>  #My top block
> 
> 
>  from gnuradio import gr
> from Trameur_stanag import Trameur
> class top(gr.top_block):
>  def __init__(self): gr.top_block.__init__(self)
> 
>  self.src_data =
>  (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
> 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
>  ,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
>  1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)
> 
> 
>  self.in_data =   gr.vector_source_b(self.src_data) self.tramage =
>  Trameur ()
>  self.sink2=gr.vector_sink()
> 
> self.connect( self.in_data, self.tramage) self.connect(self.tramage,
>  self.sink2)
>  def print_data(self)
>  print "out" , self.sink2.data()
> >> if __name__ == '__main__': try:
> >> tb = top()
> tb.run()
> tb.print_data()
> except KeyboardInterrupt: pass
> 
> 


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Question about hier block

2010-03-29 Thread Axel Belliard
Hi,

Thanks for taking the time to reply. I changed my code to print the data
after the constuctor. But it is still not working. I guess, I 'm doing
something else wrong.

The changed code :
 #My top block


 from gnuradio import gr
from Trameur_stanag import Trameur
class top(gr.top_block):
 def __init__(self): gr.top_block.__init__(self)

 self.src_data =
 (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
 ,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)


 self.in_data =   gr.vector_source_b(self.src_data) self.tramage =
 Trameur ()
 self.sink2=gr.vector_sink()

self.connect( self.in_data, self.tramage) self.connect(self.tramage,
 self.sink2)
 def print_data(self)
 print "out" , self.sink2.data()
>> if __name__ == '__main__': try:
>> tb = top()
tb.run()
tb.print_data()
except KeyboardInterrupt: pass




___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Question about hier block

2010-03-26 Thread Eric Blossom
On Fri, Mar 26, 2010 at 05:23:34PM +0100, Axel Belliard wrote:
> Hi
> 
> I'm trying to make a very simple hier block. ( see the code below). When I
> execute my top block i get no error, but the data seems to never enter the
> hier block ( the print-line prints  : "()"). What am I doing wrong?

You're printing from the constructor, before the graph has been run.


> 
> 
> my hier block#
> from gnuradio import gr
> class Trameur(gr.hier_block2):
>   def __init__(self):
>   gr.hier_block2.__init__(self, "Trameur",gr.io_signature(1, 1,
> gr.sizeof_char),gr.io_signature(1, 1, gr.sizeof_char))
> 
> 
>   #input
>   self.in_data = gr.vector_sink_b()
>   self.connect(self ,self.in_data)
>   self.src_data = self.in_data.data()
> print self.src_data
> 
>   ###output###"
>   self.out_data = gr.vector_source_b (self.src_data)
>   self.connect(self.out_data , self)
> 
> #My top block
> 
> 
> from gnuradio import gr
> from Trameur_stanag import Trameur
> class top(gr.top_block):
>   def __init__(self):
>   gr.top_block.__init__(self)
> 
>   self.src_data =
> (1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)
> 
>   self.in_data =   gr.vector_source_b(self.src_data)
>   self.tramage = Trameur ()
>   self.sink2=gr.vector_sink()
> 
>   self.connect( self.in_data, self.tramage)
>   self.connect(self.tramage, self.sink2)
> 
> if __name__ == '__main__':
>   try:
>   tb = top()
>   tb.run()
>   except KeyboardInterrupt:
>   pass


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Question about hier block

2010-03-26 Thread Axel Belliard
Hi

I'm trying to make a very simple hier block. ( see the code below). When I
execute my top block i get no error, but the data seems to never enter the
hier block ( the print-line prints  : "()"). What am I doing wrong?



my hier block#
from gnuradio import gr
class Trameur(gr.hier_block2):
def __init__(self):
gr.hier_block2.__init__(self, "Trameur",gr.io_signature(1, 1,
gr.sizeof_char),gr.io_signature(1, 1, gr.sizeof_char))


#input
self.in_data = gr.vector_sink_b()
self.connect(self ,self.in_data)
self.src_data = self.in_data.data()
print self.src_data

###output###"
self.out_data = gr.vector_source_b (self.src_data)
self.connect(self.out_data , self)

#My top block


from gnuradio import gr
from Trameur_stanag import Trameur
class top(gr.top_block):
def __init__(self):
gr.top_block.__init__(self)

self.src_data =
(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)

self.in_data =   gr.vector_source_b(self.src_data)
self.tramage = Trameur ()
self.sink2=gr.vector_sink()

self.connect( self.in_data, self.tramage)
self.connect(self.tramage, self.sink2)

if __name__ == '__main__':
try:
tb = top()
tb.run()
except KeyboardInterrupt:
pass





___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio