Go to the FreeLists Home Page Home Signup Help Login
 



[openbeosstorage] || [Date Prev] [07-2003 Date Index] [Date Next] || [Thread Prev] [07-2003 Thread Index] [Thread Next]

[openbeosstorage] Re: Disk Device API: Some semantical questions

  • From: Tyler Dauwalder <tyler@xxxxxxxxxxxxx>
  • To: openbeosstorage@xxxxxxxxxxxxx
  • Date: Sun, 13 Jul 2003 11:18:37 -0700
On 2003-07-13 at 11:03:47 [-0700], Ingo Weinhold wrote:
> On Sat, 12 Jul 2003 12:44:55 -0700 Tyler Dauwalder 
> <tyler@xxxxxxxxxxxxx
> > wrote:
> > On 2003-07-11 at 11:42:47 [-0700], Ingo Weinhold wrote:
> [...]
> > > > For VisitEachPartition(), the "device" parameter allows you
> > > > to specify a single device on which to visit all partitions,
> > > > IIRC,
> > > > but
> > > > that doesn't make much sense for VisitEachDevice().
> > > 
> > > The BDiskDevice* parameter passed to the partition visiting 
> > > methods
> > > is
> > > an output parameter as well. Since a BPartition object can only
> > > exist,
> > > if it belongs to a BDiskDevice, there must also be a BDiskDevice,
> > > if
> > > we
> > > want to return a BPartition*. And that's the function of the 
> > > device
> > > parameter; it is set to the device that contains the found
> > > partition.
> > > 
> > > If that is confusing, we can still change the visiting methods to
> > > just
> > > return a partition_id (all of them) instead of a bool and have no
> > > further parameters. Then the caller can get a device/partition
> > > object
> > > via Get{DiskDevice,Partition}WithID().
> > 
> > The only confusing part is that one is * and one is a **; that's 
> > what
> > threw me off originally. Wouldn't using the partition_id be a bit
> > more
> > expensive, since you'd have to look up the appropriate partition
> > again?
> > Or are you hashing the ids?
> 
> Yes, it would be more expensive. The device data had to be refetched
> from the kernel.

Okay, let's definitely stick with the original method then.

> 
> > Regardless, I think the way it's set up
> > currently is fine as long as it's properly documented, which it will
> > be. :-)
> 
> Which it already is. :-) The methods are virtually unchanged since the
> first iteration of the Disk Device API and so are their comments. Some
> methods still have the old comments, although their signature and/or
> their semantics have changed, though. I will document things properly,
> when the API is more stable... 

Damn, you're right. I forgot about the .cpp files. My bad. :-)

-Tyler






[ Home | Signup | Help | Login | Archives | Lists ]

All trademarks and copyrights within the FreeLists archives are owned by their respective owners.
Everything else ©2007 Avenir Technologies, LLC.