<|start_filename|>FunnelPlugin/Funnel/Syphon/SyphonProgram.h<|end_filename|>
//
//  SyphonProgram.m
//  Provides a program object used in the core profile mode
//
//  Originally created by <NAME> on 1/26/15.
//  Modified by <NAME>
//

#import <Foundation/Foundation.h>
#import <OpenGL/gltypes.h>

@interface SyphonProgram : NSObject

@property (readonly) GLint program;
@property (assign) BOOL discardAlpha;

-(void)use;

@end


<|start_filename|>FunnelPlugin/Funnel/FunnelServerHandler.h<|end_filename|>
//
// Funnel - Syphon server plugin for Unity
//
// Copyright (C) 2013-2016 <NAME>
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//

#import <Foundation/Foundation.h>

@class SyphonServer;

@interface FunnelServerHandler : NSObject

@property (retain, nonatomic) SyphonServer *syphonServer;
@property (copy, nonatomic) NSString *serverName;
@property (assign) NSRect frameTextureRect;
@property (assign) int frameTextureName;
@property (assign) BOOL linearToSRGB;
@property (assign) BOOL discardAlpha;

@end


<|start_filename|>FunnelPlugin/Funnel/Syphon/SyphonServerDrawingHelper.h<|end_filename|>
#import <Foundation/Foundation.h>
#import <OpenGL/gltypes.h>

@interface SyphonServerDrawingHelper : NSObject

- (void)drawFrameTexture:(GLuint)texID surfaceSize:(NSSize)surfaceSize discardAlpha:(BOOL)discardAlpha;

@end


<|start_filename|>UnityProject/Assets/Test/CopyFromFunnel.cs<|end_filename|>
﻿using UnityEngine;

public class CopyFromFunnel : MonoBehaviour
{
    [SerializeField] Funnel.Funnel _target;

    void Start()
    {
        GetComponent<Renderer>().material.mainTexture = _target.renderTexture;
    }
}


<|start_filename|>FunnelPlugin/Funnel/Syphon/SyphonBuildMacros.h<|end_filename|>
#ifndef SYPHON_UNUSED
#define SYPHON_UNUSED(x) (void)x
#endif
