示例#1
0
 unsafe void OnShutdown(IntPtr args)
 {
     IsConnectedToJack = false;
     JackClient        = null;
     if (Shutdown != null)
     {
         Shutdown(this, new EventArgs());
     }
 }
示例#2
0
        protected unsafe void Close()
        {
            int status = ClientApi.Close(JackClient);

            if (status == 0)
            {
                IsConnectedToJack = false;
                JackClient        = null;
            }
        }
示例#3
0
 internal unsafe Port(UnsafeStructs.jack_client_t*jackClient, int index, Direction direction, PortType portType, string nameFormat)
 {
     if (nameFormat == null) {
         nameFormat = "{type}{direction}_{index}";
     }
     _jackClient = jackClient;
     Direction = direction;
     Name = CreateName (nameFormat, index, direction, portType);
     PortType = portType;
     _port = RegisterPort (direction, portType);
 }
示例#4
0
 internal unsafe Port(UnsafeStructs.jack_client_t *jackClient, int index, Direction direction, PortType portType, string nameFormat)
 {
     if (nameFormat == null)
     {
         nameFormat = "{type}{direction}_{index}";
     }
     _jackClient = jackClient;
     Direction   = direction;
     Name        = CreateName(nameFormat, index, direction, portType);
     PortType    = portType;
     _port       = RegisterPort(direction, portType);
 }
示例#5
0
 unsafe void Dispose(bool isDisposing)
 {
     if (_jackClient == null || _port == null)
     {
         return;
     }
     if (PortApi.Unregister(_jackClient, _port) == 0)
     {
         _jackClient = null;
         _port       = null;
     }
 }
示例#6
0
        protected unsafe ClientStatus BaseOpen(bool startServer)
        {
            if (JackClient != null)
            {
                return(ClientStatus.AlreadyThere);
            }
            JackOptions startOptions = startServer ? JackOptions.JackNullOption : JackOptions.JackNoStartServer;

            JackClient = ClientApi.Open(Name, startOptions, IntPtr.Zero);
            if (JackClient == null)
            {
                return(ClientStatus.Failure);
            }
            return(ClientStatus.New);
        }
示例#7
0
 public static extern unsafe uint GetLastFrameTime(UnsafeStructs.jack_client_t *client);
示例#8
0
 public static extern unsafe void TransportStop(UnsafeStructs.jack_client_t *client);
示例#9
0
 public static extern unsafe uint GetCurrentTransportFrame(UnsafeStructs.jack_client_t *client);
示例#10
0
 unsafe void Dispose(bool isDisposing)
 {
     if (_jackClient == null || _port == null) {
         return;
     }
     if (PortApi.Unregister (_jackClient, _port) == 0){
         _jackClient = null;
         _port = null;
     }
 }
示例#11
0
 public static extern unsafe uint ConvertTimeToFrames(UnsafeStructs.jack_client_t *client, ulong frames);
示例#12
0
 public static extern unsafe int IsRealtime(UnsafeStructs.jack_client_t *client);
示例#13
0
 public static extern unsafe IntPtr GetThreadId(UnsafeStructs.jack_client_t *client);
示例#14
0
 public static extern unsafe int Deactivate(UnsafeStructs.jack_client_t *client);
示例#15
0
 public static extern unsafe IntPtr GetNameByUuid(UnsafeStructs.jack_client_t *client, string uuid);
示例#16
0
 unsafe void OnShutdown(IntPtr args)
 {
     IsConnectedToJack = false;
     JackClient = null;
     if (Shutdown != null) {
         Shutdown (this, new EventArgs ());
     }
 }
示例#17
0
 protected unsafe void Close()
 {
     int status = ClientApi.Close (JackClient);
     if (status == 0) {
         IsConnectedToJack = false;
         JackClient = null;
     }
 }
示例#18
0
 protected unsafe ClientStatus BaseOpen(bool startServer)
 {
     if (JackClient != null) {
         return ClientStatus.AlreadyThere;
     }
     JackOptions startOptions = startServer ? JackOptions.JackNullOption : JackOptions.JackNoStartServer;
     JackClient = ClientApi.Open (Name, startOptions, IntPtr.Zero);
     if (JackClient == null) {
         return ClientStatus.Failure;
     }
     return ClientStatus.New;
 }
示例#19
0
 public static extern unsafe int GetCycleTimes(UnsafeStructs.jack_client_t *client, uint currentFrames, ulong currentUsecs, ulong nextUsecs, float periodUsecs);
示例#20
0
 public static extern unsafe ulong ConvertFramesToTime(UnsafeStructs.jack_client_t *client, uint frames);
示例#21
0
 internal unsafe MidiOutPort(UnsafeStructs.jack_client_t *jackClient, int index, string nameFormat = null) : base(jackClient, index, Direction.Out, PortType.Midi, nameFormat)
 {
 }
示例#22
0
 public static extern unsafe float GetXrunDelayedUsecs(UnsafeStructs.jack_client_t *client);
示例#23
0
 public static extern unsafe int SetSyncTimeout(UnsafeStructs.jack_client_t *client, ulong timeout);
示例#24
0
 public static extern unsafe uint CycleWait(UnsafeStructs.jack_client_t *client);
示例#25
0
 public static extern unsafe int TransportLocate(UnsafeStructs.jack_client_t *client, uint frame);
示例#26
0
 public static extern unsafe int SetSyncCallback(UnsafeStructs.jack_client_t *client, Callbacks.JackSyncCallback sync_callback, void *arg);
示例#27
0
 public static extern unsafe void CycleSignal(UnsafeStructs.jack_client_t *client, int status);
示例#28
0
 public static extern unsafe int SetTimebaseCallback(UnsafeStructs.jack_client_t *client, int conditional,
                                                     Callbacks.JackTimebaseCallback timebase_callback, void *arg);
示例#29
0
 public static extern unsafe uint GetSampleRate(UnsafeStructs.jack_client_t *client);
示例#30
0
 public static extern unsafe JackTransportState TransportQuery(UnsafeStructs.jack_client_t *client, UnsafeStructs.jack_position_t *pos);
示例#31
0
 public static extern unsafe uint GetBufferSize(UnsafeStructs.jack_client_t *client);
示例#32
0
 public static extern unsafe int TransportReposition(UnsafeStructs.jack_client_t *client, UnsafeStructs.jack_position_t *pos);
示例#33
0
 public static extern unsafe float GetCpuLoad(UnsafeStructs.jack_client_t *client);
示例#34
0
 public static extern unsafe int ReleaseTimebase(UnsafeStructs.jack_client_t *client);
示例#35
0
 public static extern unsafe uint GetFramesSinceCycleStart(UnsafeStructs.jack_client_t *client);