Including the Saxonica logo on Type Browser splash screen
Roger I Martin PhD <[email protected]> Mon, 12 Dec 2005 12:36:45 -0500
| Newsgroups | gmane.comp.windows.devel.jawin |
|---|---|
| Message-ID | <[email protected]> |
Hi Josh,
I've integrated Saxon xslt 2.0 engine and thought Michael Kay's logo
should be displayed. Haven't pushed all of it into cvs but will this
week. If you agree, do you want to edit the type browser splash png?
Also Saxon could get a mention on the Info tab page.
The beginnings of nio marshaling is progressing. Could integrate it in
steps. For example, intermediate xslts could check if a functions
argument(s) and return are all primitives and primitive arrays and apply
a nio call instead. One thing to watch out is that the IdentityManager
and OLE32 initiation code works for ComPtr's and the new OleControls.
I've added type flags to the xml output.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemruntimeinteropservicestypeattrclasswtypeflagstopic.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemruntimeinteropservicestypeflagsclasstopic.asp
If TYPEFLAG_FHIDDEN is set, the xslt produces code based on
DispatchPtr. Otherwise the code is currently OleControl based which is
for display.
There are about fifteen types which can be used in combinations so there
are other possibilities.
Trying to get all choices determined at xslt time. The actual
marshaling has very little decisions to make and is structured much like
JNI. NIO buffers hold complete Variants which are needed by the
((IDispatch*)olectl)->Invoke() method are in the nio buffers.
int arrayLength=env->GetArrayLength(argArray);
VARIANTARG* pVar=new VARIANTARG[arrayLength];
for(int i=0;i<arrayLength;i++)
{
jobject arg=env->GetObjectArrayElement(argArray, (jint)i);
pVar[i]=((VARIANT*)env->GetDirectBufferAddress(arg))[0];
}
Each is independent and can be modified, edited, constructed and grown
on the COM side without needing to copy and move around one linear
buffer. This may onvolve some decision making based in the COM
marshaling side.
-Roger