Hello All:
So far everything is looking good for the WEbRequest registries. Here is a foo application that uses the registry to allocate a request object:
ossimRefPtr<ossimWebRequest> request =
ossimWebRequestFactoryRegistry::instance()->create(ossimUrl("http://www.cnn.com"));
if(request.valid())
{
ossimRefPtr<ossimWebResponse> response = request->getResponse();
if(response.valid())
{
ossimWebResponse::ByteBuffer buffer;
response->copyAllDataFromInputStream(buffer);
std::cout << ossimString(&buffer.front(), &buffer.front()+buffer.size()) << std::endl;
}
}
I will be adding errors so you can check if the stream had errors by saying something like request->getLastError() and it will return a string with an error message if one existed.
Note, this is a very simple interface and using curl we download the entire request. Typical uses would be grabbing a web pay, doing OGC calls such as WMS, WCS, chipping. Need another interface if you are going to call something that may have a gigabyte of data to download. Current implementation is for smaller amounts of data.
I will need to bridge the iostream to read smaller chunks or allow a user to set a new stream to use so one can funnel information directly to a file stream instead of memory.
take care
Garrett
On Dec 8, 2011, at 12:57 PM, Garrett Potts wrote:
> Hello Peter:
>
> The viewer will be something different. Right now we are interested in product chipping from servers that supply model information via the JP2 boxes and pixel info through the JPIP protocol. Basically it's transparent to the consumer.
>
>
> Take care
>
> Garrett
>
> On Dec 8, 2011, at 12:46 PM, Peter Borissow wrote:
>
>> Very cool! A couple years ago we build a JPIP viewer. Tiles would render at low res at first and then get progressively better (sharper/more detailed) as we fetched higher quality levels from the server. It looked really slick but more importantly, it minimized network IO when panning.
>>
>> Can't wait to see it in action. Good luck!
>>
>> Peter
>>
>>
>> From: Garrett Potts <potts@...>
>> To: Peter Borissow <peter.borissow@...>
>> Cc: ossim users <ossim-developer@...>
>> Sent: Thursday, December 8, 2011 12:16 PM
>> Subject: Re: [OSSIM] Would like to add a conditional compile of Curl based HTTP Request
>>
>> Hello Peter:
>>
>> Yes, I have a quality variable exposed that is a multiplier on the quality layers used to rectify the image. Example: quality of 50% will multiply the number of layers used by .5. I need to have error checks but I can return a low quality image. Tested in ossim-geocell application.
>>
>> For geometry, yes, we will have to add to the projection registry for additional proprietary loads. I have seen variations of GML and ITT's IAS server for NITF streams will return the original NITF tag dump in XML as a jp2 box. Very close to OSSIM's keywordlist dump.
>>
>> You should be able to do multiple requests. The JPIP handler is lighter weight than an image handler for no file resources are really taken so you could allocate multiple JPIP handlers to the same stream.
>>
>>
>> Take care
>> Garrett
>>
>> On Dec 8, 2011, at 11:40 AM, Peter Borissow wrote:
>>
>>> That's great news! The geometry is arguably the hardest part with various vendor specific metadata. Will you be able to get coordinate information for an unrectified image (compute image to ground with a local elevation database)?
>>>
>>> Couple related questions:
>>>
>>> Will you be able to specify a specific quality level for an ROI? That's pretty key for fast panning/zooming.
>>>
>>> Also, can you make multiple JPIP request simultaneously (e.g. break up an image request into smaller "tiles")?
>>>
>>>
>>> Peter
>>>
>>>
>>>
>>> From: Garrett Potts <potts@...>
>>> To: Peter Borissow <peter.borissow@...>
>>> Cc: ossim users <ossim-developer@...>
>>> Sent: Thursday, December 8, 2011 11:06 AM
>>> Subject: Re: [OSSIM] Would like to add a conditional compile of Curl based HTTP Request
>>>
>>> Hello Peter:
>>>
>>> Right now I am using kakadu and adding to the kaakdu plugin. This is ingest only so we can pull from a jpip server either through jpip or jpips protocols. I have tested the pixel pulls and seems to work nicely. I am now adding geometry parsers for the jp2 XML boxes.
>>>
>>> Would be nice to look at OpenJPEG new stuff. I am also not sure if they have their v2 branch merged to the main svn yet that implemented the "windowed" JP2 requests.
>>>
>>>
>>> Take care
>>>
>>> Garrett
>>>
>>> On Dec 8, 2011, at 10:57 AM, Peter Borissow wrote:
>>>
>>>> Garrett-
>>>> Are you implementing JPIP support for OSSIM? That would be really nice! What library are you using - Kakadu? Have you had a chance to look at OpenJPEG's OpenJPIP?
>>>>
>>>> http://code.google.com/p/openjpeg/wiki/JPIP
>>>>
>>>>
>>>> Peter
>>>>
>>>>
>>>> From: Garrett Potts <potts@...>
>>>> To: David Burken <dburken@...>
>>>> Cc: Oscar Kramer <Kramer.Oscar@...>; ossim users <ossim-developer@...>
>>>> Sent: Thursday, December 8, 2011 7:10 AM
>>>> Subject: [OSSIM] Would like to add a conditional compile of Curl based HTTP Request
>>>>
>>>> Hello Guys:
>>>>
>>>> I am starting to see multiple accesses to the class ossimHttpRequest base being needed. I was wondering if we could add the files, and later a registry, to ossim core. I was thinking about putting the base interface in ossim/base called ossimHttpRequest. This has nothing specific or any external dependencies. Next create a "web" directory under include/ossim/web and src/ossim/web that holds implementation specific that we can conditionally compile out. For example, I can add ossimCurlHttpRequest that is a CURL interface to grabbing http gets via a post call or a get method call or other type of http method calls. It can also support HTTPS access as well. We can add to it as we need it. The JPIP handling is driving this and if we ever do a WMS handler, WCS handler or any other form of "Restful" type calls we can use the same code.
>>>>
>>>> What do you guys think. I think the total file, not including factories will be an ossimHttpRequest base object and ossimCurlHttpRequest and an ossimHttpResponse that will carry response information.
>>>>
>>>>
>>>> Let me know what you guys think
>>>>
>>>> Take care
>>>>
>>>> Garrett
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Cloud Services Checklist: Pricing and Packaging Optimization
>>>> This white paper is intended to serve as a reference, checklist and point of
>>>> discussion for anyone considering optimizing the pricing and packaging model
>>>> of a cloud services business. Read Now!
>>>> http://www.accelacomm.com/jaw/sfnl/114/51491232/
>>>> _______________________________________________
>>>> http://www.ossim.org
>>>> Ossim-developer mailing list
>>>> Ossim-developer@...
>>>> https://lists.sourceforge.net/lists/listinfo/ossim-developer
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Cloud Services Checklist: Pricing and Packaging Optimization
>>>> This white paper is intended to serve as a reference, checklist and point of
>>>> discussion for anyone considering optimizing the pricing and packaging model
>>>> of a cloud services business. Read Now!
>>>> http://www.accelacomm.com/jaw/sfnl/114/51491232/_______________________________________________
>>>> http://www.ossim.org
>>>> Ossim-developer mailing list
>>>> Ossim-developer@...
>>>> https://lists.sourceforge.net/lists/listinfo/ossim-developer
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Cloud Services Checklist: Pricing and Packaging Optimization
>>> This white paper is intended to serve as a reference, checklist and point of
>>> discussion for anyone considering optimizing the pricing and packaging model
>>> of a cloud services business. Read Now!
>>> http://www.accelacomm.com/jaw/sfnl/114/51491232/_______________________________________________
>>> http://www.ossim.org
>>> Ossim-developer mailing list
>>> Ossim-developer@...
>>> https://lists.sourceforge.net/lists/listinfo/ossim-developer
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Cloud Services Checklist: Pricing and Packaging Optimization
>> This white paper is intended to serve as a reference, checklist and point of
>> discussion for anyone considering optimizing the pricing and packaging model
>> of a cloud services business. Read Now!
>> http://www.accelacomm.com/jaw/sfnl/114/51491232/_______________________________________________
>> http://www.ossim.org
>> Ossim-developer mailing list
>> Ossim-developer@...
>> https://lists.sourceforge.net/lists/listinfo/ossim-developer
>
> ------------------------------------------------------------------------------
> Cloud Services Checklist: Pricing and Packaging Optimization
> This white paper is intended to serve as a reference, checklist and point of
> discussion for anyone considering optimizing the pricing and packaging model
> of a cloud services business. Read Now!
> http://www.accelacomm.com/jaw/sfnl/114/51491232/_______________________________________________
> http://www.ossim.org
> Ossim-developer mailing list
> Ossim-developer@...
> https://lists.sourceforge.net/lists/listinfo/ossim-developer
|