1. 25 Jan, 2018 1 commit
    • Mark Olesen's avatar
      ENH: allow early completion in PackedBoolList::used() · 7ee93afe
      Mark Olesen authored
      - can stop producing content when the target number of entries has
        been reached.
      
      - change return type to labelList instead an Xfer container.
        This allows return-value-optimization and avoids a surrounding
        allocation. This potentially breaks existing code.
      
      - make PackedList and PackedBoolList moveable. Drop xfer wrappers.
      7ee93afe
  2. 26 Oct, 2017 1 commit
  3. 17 Jul, 2017 1 commit
    • Mark Olesen's avatar
      ENH: make treatment of stream allocators more uniform (issue #532) · 86ef9e86
      Mark Olesen authored
      - use allocator class to wrap the stream pointers instead of passing
        them into ISstream, OSstream and using a dynamic cast to delete
        then. This is especially important if we will have a bidirectional
        stream (can't delete twice!).
      
      STYLE:
      
      - file stream constructors with std::string (C++11)
      
      - for rewind, explicit about in|out direction. This is not currently
        important, but avoids surprises with any future bidirectional access.
      
      - combined string streams in StringStream.H header.
        Similar to <sstream> include that has both input and output string
        streams.
      86ef9e86
  4. 10 Feb, 2017 1 commit
    • Mark Olesen's avatar
      ENH: support ASCII List output on a single-line · e3d9084c
      Mark Olesen authored
      - Introduce writeList(Ostream&, label) method in various List classes to
        provide more flexibility and avoid hard-coded limits when deciding if a
        list is too long and should be broken up into multiple lines (ASCII only).
      
      - The old hard-code limit (10) is retained in the operator<< versions
      
      - This functionality is wrapped in the FlatOutput output adapter class
        and directly accessible via the 'flatOutput()' function.
      
      Eg,
          #include "ListOps.H"
          Info<< "methods: " << flatOutput(myLongList) << endl;
      
          // OR
      
          Info<< "methods: ";
          myLongList.writeList(os) << endl;
      e3d9084c
  5. 14 Aug, 2011 1 commit
  6. 19 Jan, 2011 1 commit
  7. 07 Jan, 2011 1 commit
  8. 05 Jan, 2011 2 commits
  9. 23 Nov, 2010 1 commit
  10. 02 Nov, 2010 1 commit
  11. 16 Sep, 2010 1 commit
    • Mark Olesen's avatar
      ENH: better handling of resizing for PackedList bit-wise operators · ba896b69
      Mark Olesen authored
      - previously using an '|=' or '^=' would increase the list size to
        match the RHS. Now it only increases to last bit set.
      
      - limit bit-wise operations to addressable range for minor efficiency
        improvement
      
      - trim results from '&' and '^' operations for more consistent
        behaviour
      ba896b69
  12. 15 Sep, 2010 1 commit
    • Mark Olesen's avatar
      ENH: added binary IO for PackedList and compact ASCII format · b7c85357
      Mark Olesen authored
      The compact ASCII format is a block of index/value tuples for the
      non-zero entries:
      
          { (index1 value1) (index2 value2) (index3 value3) }
      
      For PackedList<1>, and thus PackedBoolList, the compact ASCII format is
      a block of indices for the non-zero entries:
      
          { index1 index2 index3 }
      
      Thus either of the following could be used - for PackedList<2>:
      
        - a list of all values:
              16(0 3 0 2 0 0 3 1 0 0 0 0 0 0 0 1)
      
        - a block of index/value tuples:
              {(1 3) (3 2) (7 3) (8 1) (15 1)}
      
      For PackedList<1> and PackedBoolList, either of the following could be
      used:
      
        - a list of all values, using any valid bool representation:
              16(0 1 0 true 0 0 t 1 0 n n 0 0 0 0 yes)
      
        - a block of the indices for non-zero entries:
              {1 3 7 8 15}
      b7c85357
  13. 09 Aug, 2010 1 commit
  14. 28 Jul, 2010 1 commit
    • Mark Olesen's avatar
      ENH: Add PackedBoolList class (previously just a typedef) · e12581bf
      Mark Olesen authored
      ENH: adjust internal storage of PackedList to ensure that all unused
           internal storage elements are guaranteed to always be bit-wise
           zero. This makes the PackedBoolList implementation easier, and
           also greatly eases much of the book-keeping.
           Bits are now also zeroed on PackedList::clear()
      
      Note: in PackedList, require packing at least 2 items otherwise it is
           more efficient to use a normal list.
      e12581bf