@@ -498,16 +498,29 @@ pub trait Bmi {
498498 /* Getters */
499499 /// Return a reference to a flattened slice of values for a given variable.
500500 ///
501- /// Note, [`Bmi`] does not include the BMI `get_value` method in its method set.
502- /// This may change in the future.
503- /// Likewise, the return type of [`get_value_ptr`] may change in future versions.
504- /// See discussion in [#3](https://github.com/aaraney/bmi-rs/issues/3).
501+ /// This crate's bmi-c ffi bindings call a [`Bmi`]'s [`get_value_ptr`] method when
502+ /// the bmi-c
503+ /// [`get_value`](https://bmi.csdms.io/en/stable/bmi.getter_setter.html#get-value)
504+ /// function pointer is called.
505+ ///
506+ /// Note, [`Bmi`] does not include the
507+ /// [BMI `get_value`](https://bmi.csdms.io/en/stable/bmi.getter_setter.html#get-value)
508+ /// method in its method set.
509+ /// [`get_value_ptr`] should be used where `get_value` would typically be used, or where read-only
510+ /// access to a variable is sufficient.
511+ ///
512+ /// Note, some bmi-c drivers
513+ /// (e.g. [`ngen`](https://github.com/noaa-owp/ngen))
514+ /// require variables be available by raw pointer for efficiency reasons.
515+ /// [`Bmi`] implementations should take this into consideration when deciding what variables
516+ /// are exposed over [`get_value_ptr`] and [`get_value_mut_ptr`].
505517 ///
506518 /// See
507519 /// [csdms bmi `get_value_ptr`](https://bmi.csdms.io/en/stable/bmi.getter_setter.html#get-value-ptr)
508520 /// docs for more info.
509521 ///
510522 /// [`get_value_ptr`]: #tymethod.get_value_ptr
523+ /// [`get_value_mut_ptr`]: #tymethod.get_value_mut_ptr
511524 fn get_value_ptr ( & self , name : & str ) -> BmiResult < RefValues < ' _ > > ;
512525
513526 /// Return a [`MutPtrValues`] to a flattened slice of values for a given variable.
0 commit comments