Exemplo n.º 1
0
signal_t copy_loop(signal_t signal2)
{
    signal_t signal = new_signal(loop_signal);
    loop_get(signal, function)  = loop_get(signal2, function);
    loop_get(signal, data)      = loop_get(signal2, data);
    return signal;
}
Exemplo n.º 2
0
fa_signal_t copy_custom(signal_t signal2)
{
    signal_t signal = new_signal(custom_signal);
    custom_get(signal, proc)        = custom_get(signal2, proc);
    custom_get(signal, a)           = custom_get(signal2, a);
    return signal;
}
Exemplo n.º 3
0
fa_signal_t fa_signal_loop(fa_signal_unary_signal_t function, fa_ptr_t data)
{
    signal_t signal = new_signal(loop_signal);
    loop_get(signal, function)  = function;
    loop_get(signal, data)      = data;
    return signal;
}
Exemplo n.º 4
0
fa_signal_t fa_signal_custom(custom_proc_t proc, signal_t a)
{
    signal_t signal = new_signal(custom_signal);
    custom_get(signal, proc)        = proc;
    custom_get(signal, a)           = a;
    return signal;
}
Exemplo n.º 5
0
fa_signal_t fa_signal_delay(int n, fa_signal_t a)
{
    signal_t signal = new_signal(delay_signal);
    delay_get(signal, n)  = n;
    delay_get(signal, a)  = a;
    return signal;
}
Exemplo n.º 6
0
signal_t copy_delay(signal_t signal2)
{
    signal_t signal = new_signal(delay_signal);
    delay_get(signal, n)  = delay_get(signal2, n);
    delay_get(signal, a)  = delay_get(signal2, a);
    return signal;
}
Exemplo n.º 7
0
fa_signal_t fa_signal_output(int n, int c, fa_signal_t a)
{
    signal_t signal = new_signal(output_signal);
    output_get(signal, n)  = n;
    output_get(signal, c)  = c;
    output_get(signal, a)  = a;
    return signal;
}
Exemplo n.º 8
0
signal_t copy_output(signal_t signal2)
{
    signal_t signal = new_signal(output_signal);
    output_get(signal, n)  = output_get(signal2, n);
    output_get(signal, c)  = output_get(signal2, c);
    output_get(signal, a)  = output_get(signal2, a);
    return signal;
}
Exemplo n.º 9
0
signal_t copy_lift(signal_t signal2)
{
    signal_t signal = new_signal(lift_signal);
    lift_get(signal, name)      = lift_get(signal2, name);
    lift_get(signal, function)  = lift_get(signal2, function);
    lift_get(signal, data)      = lift_get(signal2, data);
    lift_get(signal, a)         = lift_get(signal2, a);
    return signal;
}
Exemplo n.º 10
0
//----------------------------------------------------------------------
VEC EEMD::addNoise(const VEC& signal, const float level)
{
    int n = signal.size();
    VEC rands = tools->getRands(n);
    VEC new_signal(n);

    new_signal = signal + level*rands;
    return(new_signal);
}
Exemplo n.º 11
0
fa_signal_t copy_insert(signal_t signal2)
{
    signal_t signal = new_signal(insert_signal);
    insert_get(signal, name)        = insert_get(signal2, name);
    insert_get(signal, numInputs)   = insert_get(signal2, numInputs);
    insert_get(signal, numOutputs)  = insert_get(signal2, numOutputs);
    insert_get(signal, input)       = insert_get(signal2, input);
    insert_get(signal, output)      = insert_get(signal2, output);
    insert_get(signal, a)           = insert_get(signal2, a);
    return signal;
}
Exemplo n.º 12
0
fa_signal_t fa_signal_insert(string_t name, int numInputs, int numOutputs, int input, int output, signal_t a)
{
    signal_t signal = new_signal(insert_signal);
    insert_get(signal, name)        = name;
    insert_get(signal, numInputs)   = numInputs;
    insert_get(signal, numOutputs)  = numOutputs;
    insert_get(signal, input)       = input;
    insert_get(signal, output)      = output;
    insert_get(signal, a)           = a;
    return signal;
}
Exemplo n.º 13
0
 int sub()
 {
     const std::string sig(cmd + SUB_LEN);
     if (signals.count(sig) == 0)
     {
         new_signal(sig);
         subs.emplace(sig, std::set<int>());
     }
     subs.at(sig).insert(socket);
     return sig.length();
 }
Exemplo n.º 14
0
fa_signal_t fa_signal_lift(fa_string_t n,
                           fa_signal_unary_double_t function,
                           fa_ptr_t data,
                           fa_signal_t a)
{
    signal_t signal = new_signal(lift_signal);
    lift_get(signal, name)      = n;
    lift_get(signal, function)  = function;
    lift_get(signal, data)      = data;
    lift_get(signal, a)         = a;
    return signal;
}
signal* create_signal(pid_t pid, bool sign) {
	signal* thisSig = new_signal();
	unsigned hashval;

	thisSig->pid = pid;
	thisSig->wait = sign;	

	init_waitqueue_head(&(thisSig->wait_null));
	hashval = hash(pid);
	
	spin_lock(&table_lock2);
	thisSig->next = all2[hashval];
	all2[hashval] = thisSig;
	spin_unlock(&table_lock2);

	return thisSig;
}
Exemplo n.º 16
0
void ListeningThread::check_for_data()
{
    m_mutex.lock();

    ExceptionManager::instance().ExceptionDumps = false;

    std::map<Communicator, ListeningInfo*>::iterator it = m_comms.begin();

    for( ; it != m_comms.end() && m_listening ; ++it )
    {
        ListeningInfo * info = it->second;

        // if the communicator is waiting for data
        if( !info->ready )
        {
            int flag;

            MPI_Test(&info->request, &flag, MPI_STATUS_IGNORE);

            // if data arrived, flag is not zero
            if( flag != 0 )
            {
                try
                {
                    XmlDoc::Ptr doc = XML::parse_cstring( info->data );

                    new_signal( it->first, doc );

                    info->ready = true; // ready to do another non-blocking receive
                }
                catch(XmlError & e)
                {
                    CFerror << e.what() << CFendl;
                    m_listening = false;
                }
            }
        }
    }

    m_mutex.unlock();
}
Exemplo n.º 17
0
signal_t copy_constant(signal_t signal2)
{
    signal_t signal = new_signal(constant_signal);
    constant_get(signal, value) = constant_get(signal2, value);
    return signal;
}
Exemplo n.º 18
0
signal_t fa_signal_random()
{
    signal_t signal = new_signal(random_signal);
    return signal;
}
Exemplo n.º 19
0
fa_signal_t fa_signal_constant(double x)
{
    signal_t signal = new_signal(constant_signal);
    constant_get(signal, value) = x;
    return signal;
}
Exemplo n.º 20
0
signal_t copy_input(signal_t signal2)
{
    signal_t signal = new_signal(input_signal);
    input_get(signal, c)  = input_get(signal2, c);
    return signal;
}
Exemplo n.º 21
0
fa_signal_t fa_signal_input(int c)
{
    signal_t signal = new_signal(input_signal);
    input_get(signal, c)  = c;
    return signal;
}
Exemplo n.º 22
0
signal_t fa_signal_time()
{
    signal_t signal = new_signal(time_signal);
    return signal;
}