예제 #1
0
 public void unlock(sidemu device)
 {
     libsidplayfp.sidemu oldSe = null;
     foreach (libsidplayfp.sidemu se in sidobjs)
     {
         if (oldSe != se)
         {
             se.unlock();
         }
         oldSe = se;
     }
     //libsidplayfp.sidemu it = sidobjs[device];
     //if (it != sidobjs[sidobjs.Count - 1])
     //{
     //    it.unlock();
     //}
 }
예제 #2
0
        /*
         * This file is part of libsidplayfp, a SID player engine.
         *
         * Copyright 2011-2015 Leandro Nini <*****@*****.**>
         * Copyright 2007-2010 Antti Lankila
         * Copyright 2000-2001 Simon White
         *
         * This program is free software; you can redistribute it and/or modify
         * it under the terms of the GNU General Public License as published by
         * the Free Software Foundation; either version 2 of the License, or
         * (at your option) any later version.
         *
         * This program is distributed in the hope that it will be useful,
         * but WITHOUT ANY WARRANTY; without even the implied warranty of
         * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
         * GNU General Public License for more details.
         *
         * You should have received a copy of the GNU General Public License
         * along with this program; if not, write to the Free Software
         * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
         */

        //# include "sidbuilder.h"
        //# include <algorithm>
        //# include "sidemu.h"
        //# include "sidcxx11.h"

        public sidemu lock_(EventScheduler scheduler, libsidplayfp.sidplayfp.SidConfig.sid_model_t model)
        {
            m_status = true;

            foreach (libsidplayfp.sidemu it in sidobjs)
            {
                sidemu sid = it;
                if (sid.lock_(scheduler))
                {
                    sid.model(model);
                    return(sid);
                }
            }

            // Unable to locate free SID
            m_status      = false;
            m_errorBuffer = name() + " ERROR: No available SIDs to lock";
            return(null);
        }
예제 #3
0
 public void opeKakko(sidemu e)
 {
     m_method(m_param);
 }