Skip to content

Commit

Permalink
Apply pcDuino Mali Frame Buffer changes to latest release
Browse files Browse the repository at this point in the history
  • Loading branch information
digitalhack committed Oct 31, 2013
1 parent c2cc3d6 commit ed60fc3
Show file tree
Hide file tree
Showing 17 changed files with 1,435 additions and 17 deletions.
13 changes: 13 additions & 0 deletions apps/devApps/pcDuino_hello_world_gles2/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Attempt to load a config.make file.
# If none is found, project defaults in config.project.make will be used.
ifneq ($(wildcard config.make),)
include config.make
endif

# make sure the the OF_ROOT location is defined
ifndef OF_ROOT
OF_ROOT=../../..
endif

# call the project makefile!
include $(OF_ROOT)/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk
Empty file.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
153 changes: 153 additions & 0 deletions apps/devApps/pcDuino_hello_world_gles2/config.make
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
################################################################################
# CONFIGURE PROJECT MAKEFILE (optional)
# This file is where we make project specific configurations.
################################################################################

################################################################################
# OF ROOT
# The location of your root openFrameworks installation
# (default) OF_ROOT = ../../..
################################################################################
# OF_ROOT = ../../..

################################################################################
# App Name
# Custom Application Name
# (default) APPNAME = (this project's folder name)
# App Name Suffix
# (default) APPNAME_SUFFIX = .app
#
################################################################################
# APPNAME = customAppName
# APPNAME_SUFFIX = .app

################################################################################
# PROJECT ROOT
# The location of the project - a starting place for searching for files
# (default) PROJECT_ROOT = . (this directory)
#
################################################################################
# PROJECT_ROOT = .

################################################################################
# PROJECT SPECIFIC CHECKS
# This is a project defined section to create internal makefile flags to
# conditionally enable or disable the addition of various features within
# this makefile. For instance, if you want to make changes based on whether
# GTK is installed, one might test that here and create a variable to check.
################################################################################
# None

################################################################################
# PROJECT EXTERNAL SOURCE PATHS
# These are fully qualified paths that are not within the PROJECT_ROOT folder.
# Like source folders in the PROJECT_ROOT, these paths are subject to
# exlclusion via the PROJECT_EXLCUSIONS list.
#
# (default) PROJECT_EXTERNAL_SOURCE_PATHS = (blank)
#
# Note: Leave a leading space when adding list items with the += operator
################################################################################
# PROJECT_EXTERNAL_SOURCE_PATHS =

################################################################################
# PROJECT EXCLUSIONS
# These makefiles assume that all folders in your current project directory
# and any listed in the PROJECT_EXTERNAL_SOURCH_PATHS are are valid locations
# to look for source code. The any folders or files that match any of the
# items in the PROJECT_EXCLUSIONS list below will be ignored.
#
# Each item in the PROJECT_EXCLUSIONS list will be treated as a complete
# string unless teh user adds a wildcard (%) operator to match subdirectories.
# GNU make only allows one wildcard for matching. The second wildcard (%) is
# treated literally.
#
# (default) PROJECT_EXCLUSIONS = (blank)
#
# Will automatically exclude the following:
#
# $(PROJECT_ROOT)/bin%
# $(PROJECT_ROOT)/obj%
# $(PROJECT_ROOT)/%.xcodeproj
#
# Note: Leave a leading space when adding list items with the += operator
################################################################################
# PROJECT_EXCLUSIONS =

################################################################################
# PROJECT LINKER FLAGS
# These flags will be sent to the linker when compiling the executable.
#
# (default) PROJECT_LDFLAGS = -Wl,-rpath=./libs
#
# Note: Leave a leading space when adding list items with the += operator
################################################################################

# Currently, shared libraries that are needed are copied to the
# $(PROJECT_ROOT)/bin/libs directory. The following LDFLAGS tell the linker to
# add a runtime path to search for those shared libraries, since they aren't
# incorporated directly into the final executable application binary.
# TODO: should this be a default setting?
# PROJECT_LDFLAGS=-Wl,-rpath=./libs

################################################################################
# PROJECT DEFINES
# Create a space-delimited list of DEFINES. The list will be converted into
# CFLAGS with the "-D" flag later in the makefile.
#
# (default) PROJECT_DEFINES = (blank)
#
# Note: Leave a leading space when adding list items with the += operator
################################################################################
# PROJECT_DEFINES =

################################################################################
# PROJECT CFLAGS
# This is a list of fully qualified CFLAGS required when compiling for this
# project. These CFLAGS will be used IN ADDITION TO the PLATFORM_CFLAGS
# defined in your platform specific core configuration files. These flags are
# presented to the compiler BEFORE the PROJECT_OPTIMIZATION_CFLAGS below.
#
# (default) PROJECT_CFLAGS = (blank)
#
# Note: Before adding PROJECT_CFLAGS, note that the PLATFORM_CFLAGS defined in
# your platform specific configuration file will be applied by default and
# further flags here may not be needed.
#
# Note: Leave a leading space when adding list items with the += operator
################################################################################
# PROJECT_CFLAGS =

################################################################################
# PROJECT OPTIMIZATION CFLAGS
# These are lists of CFLAGS that are target-specific. While any flags could
# be conditionally added, they are usually limited to optimization flags.
# These flags are added BEFORE the PROJECT_CFLAGS.
#
# PROJECT_OPTIMIZATION_CFLAGS_RELEASE flags are only applied to RELEASE targets.
#
# (default) PROJECT_OPTIMIZATION_CFLAGS_RELEASE = (blank)
#
# PROJECT_OPTIMIZATION_CFLAGS_DEBUG flags are only applied to DEBUG targets.
#
# (default) PROJECT_OPTIMIZATION_CFLAGS_DEBUG = (blank)
#
# Note: Before adding PROJECT_OPTIMIZATION_CFLAGS, please note that the
# PLATFORM_OPTIMIZATION_CFLAGS defined in your platform specific configuration
# file will be applied by default and further optimization flags here may not
# be needed.
#
# Note: Leave a leading space when adding list items with the += operator
################################################################################
# PROJECT_OPTIMIZATION_CFLAGS_RELEASE =
# PROJECT_OPTIMIZATION_CFLAGS_DEBUG =

################################################################################
# PROJECT COMPILERS
# Custom compilers can be set for CC and CXX
# (default) PROJECT_CXX = (blank)
# (default) PROJECT_CC = (blank)
# Note: Leave a leading space when adding list items with the += operator
################################################################################
# PROJECT_CXX =
# PROJECT_CC =
18 changes: 18 additions & 0 deletions apps/devApps/pcDuino_hello_world_gles2/src/main.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#include "ofMain.h"
#include "testApp.h"
//#include "ofGLES2Renderer.h"

//========================================================================
int main( ){

// ofGLES2Renderer * renderer = new ofGLES2Renderer();
// ofSetCurrentRenderer(ofPtr<ofBaseRenderer>(renderer)); // switch to GLES2 renderer.

ofSetupOpenGL(1024,768, OF_WINDOW);// <-------- setup the GL context

// this kicks off the running of my app
// can be OF_WINDOW or OF_FULLSCREEN
// pass in width and height too:
ofRunApp( new testApp());

}
89 changes: 89 additions & 0 deletions apps/devApps/pcDuino_hello_world_gles2/src/testApp.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
#include "testApp.h"


//--------------------------------------------------------------
void testApp::setup(){
ofSetLogLevel(OF_LOG_VERBOSE);

ofBackground(255,255,0);

pcduinoboard.loadImage("pcduinoboard.png");

}

//--------------------------------------------------------------
void testApp::exit(){
ofLogVerbose("testApp") << "exit()";
}

//--------------------------------------------------------------
void testApp::update(){
angle += 1;
angle = angle % 360;
}

//--------------------------------------------------------------
void testApp::draw() {

ofSetColor(255);
ofPushMatrix();
ofTranslate(ofGetWidth()/2.0f,ofGetHeight()/2.0f);
ofRotateZ(angle);
ofEnableAlphaBlending();
pcduinoboard.draw(-pcduinoboard.width/2.0f,-pcduinoboard.height/2.0f);
ofDisableAlphaBlending();
ofPopMatrix();

// draw the mouse
ofPushStyle();
ofSetColor(255,0,0);
ofNoFill();
ofLine(ofGetMouseX(),0,ofGetMouseX(),ofGetHeight());
ofLine(0,ofGetMouseY(),ofGetWidth(),ofGetMouseY());
ofPopStyle();
}

//--------------------------------------------------------------
void testApp::keyPressed(int key){
ofLogVerbose("testApp") << "keyPressed() key = " << key;
}

//--------------------------------------------------------------
void testApp::keyReleased(int key){
ofLogVerbose("testApp") << "keyReleased() key = " << key;
}

//--------------------------------------------------------------
void testApp::mouseMoved(int x, int y ){
ofLogVerbose("testApp") << "mouseMoved() x = " << x << "/" << y;
}

//--------------------------------------------------------------
void testApp::mouseDragged(int x, int y, int button){
ofLogVerbose("testApp") << "mouseDragged() x = " << x << "/" << y << " button=" << button;
}

//--------------------------------------------------------------
void testApp::mousePressed(int x, int y, int button){
ofLogVerbose("testApp") << "mousePressed() x = " << x << "/" << y << " button=" << button;
}

//--------------------------------------------------------------
void testApp::mouseReleased(int x, int y, int button){
ofLogVerbose("testApp") << "mouseReleased() x = " << x << "/" << y << " button=" << button;
}

//--------------------------------------------------------------
void testApp::windowResized(int w, int h){
ofLogVerbose("testApp") << "windowResized() w = " << w << " h = " << h;
}

//--------------------------------------------------------------
void testApp::gotMessage(ofMessage msg){
ofLogVerbose("testApp") << "gotMessage() msg.message = " << msg.message;
}

//--------------------------------------------------------------
void testApp::dragEvent(ofDragInfo dragInfo){
ofLogVerbose("testApp") << "dragEvent()";
}
29 changes: 29 additions & 0 deletions apps/devApps/pcDuino_hello_world_gles2/src/testApp.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#pragma once

#include "ofMain.h"

class testApp : public ofBaseApp {

public:
void setup();
void update();
void draw();

void exit();

void keyPressed(int key);
void keyReleased(int key);
void mouseMoved(int x, int y );
void mouseDragged(int x, int y, int button);
void mousePressed(int x, int y, int button);
void mouseReleased(int x, int y, int button);
void windowResized(int w, int h);
void dragEvent(ofDragInfo dragInfo);
void gotMessage(ofMessage msg);


ofImage pcduinoboard;

int angle;
};

4 changes: 2 additions & 2 deletions libs/openFrameworks/app/ofAppBaseWindow.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#include "ofPoint.h"
#include "ofTypes.h"

#if defined(TARGET_LINUX) && !defined(TARGET_RASPBERRY_PI)
#if defined(TARGET_LINUX) && !defined(TARGET_RASPBERRY_PI) && !defined(TARGET_PCDUINO_MFB)
#include <X11/Xlib.h>
#endif

Expand Down Expand Up @@ -50,7 +50,7 @@ class ofAppBaseWindow{

virtual void setVerticalSync(bool enabled){};

#if defined(TARGET_LINUX) && !defined(TARGET_RASPBERRY_PI)
#if defined(TARGET_LINUX) && !defined(TARGET_RASPBERRY_PI) && !defined(TARGET_PCDUINO_MFB)
virtual Display* getX11Display(){return NULL;}
virtual Window getX11Window() {return 0;}
#endif
Expand Down
Loading

0 comments on commit ed60fc3

Please sign in to comment.