1460761190-8a5e7b7c-3361-4cd9-ab5f-b471e3ad5724

1. In a Java computing environment, a method of invoking a native method written in a native programming language without calling a Java Native Interface (JNI), said method comprising:
providing a set of macro instructions which are written in said native programming language with a direct reference to one or more Java parameters stored on a Java execution stack, wherein said one or more Java parameters are associated with said native method;
converting, by said set of macro instructions, said one or more Java parameters into at least one native parameter suitable for invocation of said native method, wherein said one or more Java parameters are converted by said converting without calling a Java Native Interface (JNI);
placing said at least one native parameter on a native execution stack associated with said native programming language after said converting operates to generate said at least one native parameter by accessing said direct reference; and
invoking said native method with said at least one native parameter after said converting of said at least one native parameter and said placing of said at least one native parameter on said execution stack, thereby allowing said native method to be invoked without calling said Java Native Interface (JNI).
2. A method as recited in claim 1, wherein said set of macro instructions and said native method are written in C programming language.
3. A method as recited in claim 1, wherein said at least one Java parameter is a Java reference object or a Java primitive data type.
4. A method as recited in claim 1,
wherein said set of macros operate to insulate the native method from the internals of a virtual machine that is invoking said native method.
5. A computer readable medium including computer program code for invoking a native method written in a native programming language without calling a Java Native Interface (JNI), said compute readable medium comprising:
computer program code for providing a set of macro instructions which are written in said native programming language with a direct reference to one or more Java parameters stored on a Java execution stack, wherein said one or more Java parameters are associated with said native method;
computer program code for converting, by said set of macro instructions, said one or more Java parameters into at least one native parameter suitable for invocation of said native method, wherein said one or more Java parameters are converted by said converting without calling a Java Native Interface (JNI);
computer program code for placing said at least one native parameter on a native execution stack associated with said native programming language after said converting operates to generate said at least one native parameter by accessing said direct reference; and
computer program code for invoking said native method with said at least one native parameter after said converting of said at least one native parameter and said placing of said at least one native parameter on said execution stack, thereby allowing said native method to be invoked without calling said Java Native Interface (JNI).
6. A computer readable medium as recited in claim 5, wherein said native programming language is the C or C++ programming language.
7. A computer readable medium as recited in claim 5, wherein said at least one Java parameter is a Java reference object or a Java primitive data type.
8. A computer readable medium as recited in claim 5, wherein said set of macros operate to insulate the native method from the internals of a virtual machine that is invoking said native method.
9. A computer system, comprising:
at least one processor which supports a virtual machine capable of invoking a native method written in a native programming language without calling a Java Native Interface (JNI), wherein said virtual machine is capable of:
providing a set of macro instructions which are written in said native programming language with a direct reference to one or more Java parameters stored on a Java execution stack, wherein said one or more Java parameters are associated with said native method
converting, by said set of macro instructions, said one or more Java parameters into at least one native parameter suitable for invocation of said native method, wherein said one or more Java parameters are converted by said converting without calling a Java Native Interface (JNI);
placing said at least one native parameter on a native execution stack associated with said native programming language after said converting operates to generate said at least one native parameter by accessing said direct reference; and
invoking said native method with said at least one native parameter after said converting of said at least one native parameter and said placing of said at least one native parameter on said execution stack, thereby allowing said native method to be invoked without calling said Java Native Interface (JNI).
10. A computer system as recited in claim 9, wherein said native programming language is the C or C++ programming language.
11. A computer system as recited in claim 9, wherein said at least one Java parameter is a Java reference object or a Java primitive data type.
12. A computer system as recited in claim 9, wherein said set of macros operate to insulate the native method from the internals of said virtual machine.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A swivel multi-hitch, comprising:
a tongue comprising a first end in opposition to a second end and a ball having a longitudinal axis, wherein the first end is adapted to be connected to a vehicle and the second end extends therefrom and the ball is connected adjacent the second end;
a swivel plate comprising a mounting aperture and a hitch opening wherein the swivel plate is pivotally connected at the mounting aperture to the tongue about the longitudinal axis of the ball and is configured to be selectively mountable between a work orientation and a storage orientation;
a fixation plate connected to the tongue about the longitudinal axis of the ball such that the swivel plate is disposed between the fixation plate and the tongue; and
wherein when the swivel plate is disposed in the storage orientation the hitch opening is disposed adjacent to the vehicle and when the swivel plate is disposed in the work orientation the hitch opening is disposed extended from the ball.
2. The swivel multi-hitch of claim 1, wherein the swivel plate comprises a first locking aperture and the fixation plate comprises a second locking aperture, wherein a locking element is inserted through the first and second locking apertures to secure the swivel plate in the work orientation.
3. The swivel multi-hitch of claim 2, wherein the swivel plate comprises a third locking aperture, and wherein the locking element is inserted through the third and the second locking apertures to secure the swivel plate in the storage orientation.
4. The swivel multi-hitch of claim 1, wherein the hitch opening is a circular aperture.
5. The swivel multi-hitch of claim 2, wherein the locking element is a pin.
6. The swivel multi-hitch of claim 3, wherein the locking element is a pin.
7. The swivel multi-hitch of claim 1, wherein a body along the longitudinal axis of the ball and coupled with the ball serves as a pivot for the swivel plate.
8. The swivel hitch of claim 7, wherein the body further includes a locking end in opposition to the ball along the longitudinal axis and where a lock nut on the locking end secures the fixation plate to the tongue.
9. A method for using a swivel multi-hitch on a vehicle, the method comprising:
placing on the back end of a vehicle a swivel multi-hitch comprising a tongue having a first end in opposition to a second end and a ball having a longitudinal axis, wherein the first end is adapted to be connected to the back of the vehicle and the second end extends therefrom and the ball is connected adjacent the second end, a swivel plate having a mounting aperture and a hitch opening wherein the swivel plate is pivotally connected at the mounting aperture to the tongue about the longitudinal axis of the ball and is configured to be selectively mountable between a work orientation and a storage orientation, a fixation plate connected to the tongue about the longitudinal axis of the ball such that the swivel plate is disposed between the fixation plate and the tongue, and wherein when the swivel plate is disposed in the storage orientation the hitch opening is disposed adjacent to the vehicle and when the swivel plate is disposed in the work orientation the hitch opening is disposed extended from the ball, and wherein the swivel plate comprises a first locking aperture and a third locking aperture and the fixation plate having a second locking aperture and wherein a locking element is inserted through the third and second locking apertures to secure the swivel plate in the storage orientation;
removing the locking element from the second and third locking apertures;
pivoting the swivel plate until the first and second locking apertures align; and
inserting the locking element through the first and second locking apertures in the work orientation.