var searchIndex = {}; searchIndex["rustfbp"] = {"doc":"","items":[[0,"component","rustfbp","",null,null],[3,"OutputSender","rustfbp::component","Represent a output port.",null,null],[3,"CountSender","","",null,null],[12,"count","","",0,null],[3,"CountReceiver","","",null,null],[12,"count","","",1,null],[3,"OptionReceiver","","Represent the default options simple input port",null,null],[4,"OutputPortError","","Error for the OutputSender.",null,null],[13,"NotConnected","","",2,null],[13,"CannotSend","","",2,null],[5,"downcast","","Downcast a Box<Any> to a type I. It returns the ownership of the variable, not a borrow.",null,{"inputs":[{"name":"box"}],"output":{"name":"i"}}],[5,"count_channel","","",null,null],[8,"InputSenders","","Manage the simple input ports of a component.",null,null],[10,"get_sender","","Get the SyncSender of the port "port".\nIf the port exists, this method return a SyncSender casted as a Box<Any>.",3,null],[8,"InputArraySenders","","Manage the array input ports of a component.",null,null],[10,"get_selection_sender","","Get the SyncSender of the selection "selection" of the port "port".\nIf the selection port exists, this method return a SyncSender casted as a Box<Any>.",4,null],[10,"add_selection_sender","","Allow to add a SyncSender in an array input port.",4,null],[10,"get_sender_receiver","","This method create a SyncSender and a Receiver for the array input port "port".\nIt returns a tuple (SyncSender, Receiver) both casted at Box<Any>",4,null],[8,"InputArrayReceivers","","Manage the array input ports of a component.",null,null],[10,"add_selection_receiver","","Allow to add a Receiver in an array input port.",5,null],[8,"Component","","Allows to manage a component from outside",null,null],[8,"ComponentRun","","Allows to run a component once",null,null],[10,"run","","Runs the component once. It read and write on the input and output ports.",6,null],[8,"ComponentConnect","","Allows to manage the simple and array output port",null,null],[10,"connect","","Connects the output port "port" with a specific SyncSender\n# Example",7,null],[10,"add_output_selection","","Create a selection "selection" for the array output port "port"\n# Example",7,null],[10,"connect_array","","Connects the selection "selection" of the array output port "port" with a specific SyncSender\n# Example",7,null],[10,"disconnect","","Disconnect the output port "port"",7,null],[10,"disconnect_array","","Disconnect the selection "selection" of the output array port "port"",7,null],[10,"add_selection_receiver","","Add a Receiver for the selection "selection" of the array input port "port"\n# Example",7,null],[10,"set_receiver","","",7,null],[10,"get_receiver_outputport","","",7,null],[10,"is_ips","","Return true if there is at least one IP in at least one input ports",7,null],[10,"is_input_ports","","Return true if there is at least one input ports (simple or array)",7,null],[8,"IP","","Define the minimal traits that an IP must have",null,null],[11,"new","","Create a new unconnected OutputSender structure.",8,{"inputs":[],"output":{"name":"self"}}],[11,"connect","","Connect the OutputSener structure with the given SyncSender",8,null],[11,"remove","","Remove",8,null],[11,"disconnect","","Disconect",8,null],[11,"send","","Send a message to the OutputPort. If the port is unconnected, it return a\nOutputPortError::NotConnected. If there is an error while the transfer, it return the\ncorresponding SendError message.",8,null],[11,"new","","",0,{"inputs":[{"name":"syncsender"},{"name":"arc"}],"output":{"name":"self"}}],[11,"send","","",0,null],[11,"set_sched","","",0,null],[11,"clone","","",0,null],[11,"new","","",1,{"inputs":[{"name":"receiver"},{"name":"arc"}],"output":{"name":"self"}}],[11,"recv","","",1,null],[11,"try_recv","","",1,null],[11,"new","","Return a new OptionReceiver for the Receiver "r"",9,{"inputs":[{"name":"receiver"}],"output":{"name":"self"}}],[11,"recv","","Return a message.",9,null],[11,"try_recv","","Return a message or an error",9,null],[0,"scheduler","rustfbp","manages the execution of a FBP graph.",null,null],[3,"Comp","rustfbp::scheduler","Retains each component information for the "exterior scheduler"",null,null],[3,"Scheduler","","the exterior scheduler. The end user use the methods of this structure.",null,null],[12,"components","","Will be private, public for debug",10,null],[12,"subnets","","",10,null],[12,"sender","","",10,null],[4,"CompMsg","","All the messages that can be send between the "exterior scheduler" and the "interior scheduler".",null,null],[13,"NewComponent","","Add a new component. The String is the name, the BoxedComp is the component itself",11,null],[13,"Start","","Ask the scheduler to start the component named "String"",11,null],[13,"Halt","","Stop the scheduler",11,null],[13,"HaltState","","",11,null],[13,"RunEnd","","Tell the scheduler that the component "BoxedComp" name "String" end his run",11,null],[13,"AddInputArraySelection","","Tell to add a selection to an input array port",11,null],[13,"AddOutputArraySelection","","Tell to ad a selection to an output array port",11,null],[13,"ConnectOutputPort","","Connect an Output port",11,null],[13,"ConnectOutputArrayPort","","Connect an Output array port",11,null],[13,"Disconnect","","Disconnect",11,null],[13,"DisconnectArray","","",11,null],[13,"Remove","","Remove",11,null],[4,"SyncMsg","","",null,null],[13,"Remove","","",12,null],[13,"CannotRemove","","",12,null],[6,"BoxedComp","","Represent a component in a Box",null,null],[11,"new","","",10,{"inputs":[],"output":{"name":"self"}}],[11,"add_component","","",10,null],[11,"add_subnet","","",10,null],[11,"start","","",10,null],[11,"remove_component","","",10,null],[11,"remove_subnet","","",10,null],[11,"connect","","",10,null],[11,"connect_array","","",10,null],[11,"connect_to_array","","",10,null],[11,"connect_array_to_array","","",10,null],[11,"disconnect","","",10,null],[11,"disconnect_array","","",10,null],[11,"add_input_array_selection","","",10,null],[11,"add_output_array_selection","","",10,null],[11,"get_sender","","",10,null],[11,"get_option","","",10,null],[11,"get_acc","","",10,null],[11,"get_array_sender","","",10,null],[11,"join","","",10,null],[0,"subnet","rustfbp","",null,null],[3,"GraphBuilder","rustfbp::subnet","",null,null],[3,"Graph","","",null,null],[3,"Node","","",null,null],[12,"name","","",13,null],[12,"sort","","",13,null],[3,"VirtualPort","","",null,null],[12,"0","","",14,null],[12,"1","","",14,null],[12,"2","","",14,null],[3,"IIP","","",null,null],[12,"1","","",15,null],[12,"2","","",15,null],[3,"SubNet","","",null,null],[12,"input_names","","",16,null],[12,"output_names","","",16,null],[12,"children","","",16,null],[12,"start","","",16,null],[4,"COrG","","",null,null],[13,"C","","",17,null],[13,"G","","",17,null],[4,"Edge","","",null,null],[13,"Simple2simple","","",18,null],[13,"Simple2array","","",18,null],[13,"Array2simple","","",18,null],[13,"Array2array","","",18,null],[11,"clone","","",19,null],[11,"new","","",19,{"inputs":[],"output":{"name":"self"}}],[11,"add_component","","",19,null],[11,"add_subnet","","",19,null],[11,"edges","","",19,null],[11,"fmt","","",20,null],[11,"clone","","",20,null],[11,"add_simple2simple","","",20,null],[11,"add_simple2array","","",20,null],[11,"add_array2simple","","",20,null],[11,"add_array2array","","",20,null],[11,"add_virtual_input_port","","",20,null],[11,"add_virtual_output_port","","",20,null],[11,"fmt","","",13,null],[11,"clone","","",13,null],[11,"fmt","","",17,null],[11,"clone","","",17,null],[11,"fmt","","",18,null],[11,"clone","","",18,null],[11,"fmt","","",14,null],[11,"clone","","",14,null],[11,"fmt","","",15,null],[11,"clone","","",15,null],[11,"new","","",16,{"inputs":[{"name":"graph"},{"name":"string"},{"name":"scheduler"}],"output":null}],[14,"component!","rustfbp","",null,null]],"paths":[[3,"CountSender"],[3,"CountReceiver"],[4,"OutputPortError"],[8,"InputSenders"],[8,"InputArraySenders"],[8,"InputArrayReceivers"],[8,"ComponentRun"],[8,"ComponentConnect"],[3,"OutputSender"],[3,"OptionReceiver"],[3,"Scheduler"],[4,"CompMsg"],[4,"SyncMsg"],[3,"Node"],[3,"VirtualPort"],[3,"IIP"],[3,"SubNet"],[4,"COrG"],[4,"Edge"],[3,"GraphBuilder"],[3,"Graph"]]}; initSearch(searchIndex);