| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
we move to java language level 5.
removed accidentally commited verbose javac property in build-junit.xml.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
32bit/64bit values and arrays are misrepresented
- PointerBuffer: Adding methods
PointeRBuffer referenceBuffer(int index, Buffer data)
PointeRBuffer referenceBuffer(Buffer data)
Buffer getReferencedBuffer(int index)
Buffer getReferencedBuffer()
Adding a reference of a given direct Buffer
to this pointer buffer, and retrieving a
previously referenced direct Buffer.
This allows a more convenient handling of PointerBuffer
with the user API's ..
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
32bit/64bit values and arrays are misrepresented
- PointerBuffer is used to map 64bit integer values,
which is illegal due to the latest PointerBuffer changes,
where the underlying ByteBuffer is either 32bit wide
or 64bit wide (in respect to the pointer size).
The PointerBuffer semantic itself is correct,
but no more suitable to represent 64bit values and arrays.
A Int64Buffer (LongBuffer does not exist in CDC/CVM patch)
should be used instead.
- Determine use of Int64Buffer and PointerBuffer
Assuming the 1st step being solved, it has to determined
for which cases gluegen shall map a type to a PointerBuffer.
All pointer pointer types, regardless of a Opaque mapping, ie:
+++
typedef struct __MYAPIConfig * MYAPIConfig;
Opaque long MYAPIConfig
void foo(MYAPIConfig * ptrarray);
+++
The argument 'ptrarray' must be represented as a PointerBuffer
otherwise data is misrepresented in case:
- 32bit machines _and_
- array semantics - more than one value is being used
Impl:
java/com/sun/gluegen/JavaEmitter.java:
- Checks ptr-ptr for Opaque values
- Returns PointerBuffer mapping for ptr-ptr types
- Allow PointerBuffer being mapped as String[]
Very elaborated tests .. :)
++++++++++++
Misc Changes:
- Added <Type>.put(<Type>Buffer src) for Int64Buffer/PointerBuffer
|
|\| |
|
| | |
|
| |
| |
| |
| | |
BufferFactory.
|
| | |
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
|
|
| |
special case.
introduced Platform as utility for querying platform information.
special cdc build with cdc_fp bootclasspath temporary dissabled.
|
|
|
|
|
|
|
| |
special case.
introduced Platform as utility for querying platform information.
special cdc build with cdc_fp bootclasspath temporary dissabled.
|
| |
|
|\ |
|
| | |
|
| |\
| | |
| | |
| | |
| | | |
Conflicts:
src/junit/com/jogamp/gluegen/test/junit/Test1.java
|
| | | |
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Mixed types in generated code are functioning now,
even though not all permutations are generated - still.
However, this patch merges the indirect object passing,
wheather it is a primitive array or an indirect NIO buffer,
incl. PointerBuffer.
This allows the usage of only one JNI functions for all combinations.
Only in case of NIODirectOnly, the simplified direct only '0'
variation is created - otherwise the parametrized '1' variant.
The junit tests proves the implementation and
almost completes the gluegen junit tests coverage
for JavaEmitter and ProcAddressEmitter.
Impact/Result:
- Working mixed array types
- JOGL GL2 native library shrunk around 30%
- Simplified gluegen code
- Almost complete gluegen junit tests
TODO: Complete permutations of array/NIO arguments,
if desired.
++++
Misc changes:
- NativeLibrary implements DynamicLookupHelper:
lookupFunction() -> dynamicLookupFunction()
|
| | |
|
|/ |
|
|
|
|
|
| |
looked fine but it did not work for all projects...
This reverts commit 3793f181a21a38e8e4965eff073a5007c9c094a2.
|
| |
|
|
|
|
|
| |
-Warning: Reference antlr.classpath has not been set at runtime, but was found during runtime
-duplicated project name
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adding 'plain' junit tests.
Plain stands for the simple processing of:
ant.junit.compile: gluegen -> java/c files, javac/cc, jar
ant.junit.run: junit batch run
Avoiding 'black magic', ie kicking off gluegen and ant-compilation
from within the junit tests.
Same methodology as the JOGL junit tests,
junit test sources are under 'src/junit'
This way, the migration to other platform tests might be easier,
as well as the we don't need to pass through ant properties (ant - junit - ant),
see 3a32650d4229f9b4ad1f527d9e30c24ddb69bb3f.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current junit tests use a fixed 'build' sub-path,
not the customizing 'rootrel.build' path.
More properties needs to be passed through (ant -> junit -> ant)
to comply with the current build system:
* rootrel.build
* os.arch
* gluegen.user.compiler.file
Fixed ..
However .. since even more properties may influence the build,
a more native solution with just plain 'ant' might be more desireable ..
|
| |
|
|
|
|
|
|
| |
illegally added after a closing bracket.
added testcase.
|
|
|
|
|
|
| |
in favor of a simple PointerBuffer.wrap(..),
due to the new semantics, ie internal integer/long presentation.
Fixed the javame code in this regard.
|
| |
|
| |
|
| |
|
|
|
|
| |
fixed 'deprecated API' warnings in GlueGen.
|
|
|
|
| |
WIP: refactored PCPP to implement macros, next step is to replace StreamTokenizer with Scanner (we need a propper look ahead).
|
| |
|
| |
|
|
|
|
|
| |
added StructAccessorTest, refactored other tests.
updated project files, paths etc.
|