/*
 * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
 */

#import <QuartzCore/QuartzCore.h>
#import <OpenGL/gl.h>
#import <OpenGL/OpenGL.h>

#import "GlassOffscreen.h"

@interface GlassLayer3D : CAOpenGLLayer
{
    mach_port_t _serverPort;
    CALayer *_remoteLayer;
    uint32_t _remoteLayerID;
    
    BOOL _dirty;
    
    CGLContextObj _ctx;
    CGLPixelFormatObj _format;
    GlassOffscreen *_offscreen;
}

- (id)initWithContext:(CGLContextObj)ctx withFormat:(CGLPixelFormatObj)format withOffscreen:(GlassOffscreen*)offscreen;
- (uint32_t)getRemoteIdForServer:(NSString*)serverName;

@end
