Changeset 1770

Show
Ignore:
Timestamp:
01/01/10 14:04:37 (11 years ago)
Author:
arnonym
Message:

Change the fbtypes into ffadotypes.h and add a generic stringlist.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/src/fbtypes.h

    r1763 r1770  
    2525#define FBTYPES_H 
    2626 
    27 #ifndef __STDC_FORMAT_MACROS 
    28 #define __STDC_FORMAT_MACROS 
    29 #endif 
    30 #include <inttypes.h> 
     27#include <ffadotypes.h> 
    3128 
    32 #include <libraw1394/raw1394.h> 
    33  
    34 #define INVALID_NODE_ID 0xFF 
    35  
    36 typedef quadlet_t   fb_quadlet_t; 
    37 typedef byte_t      fb_byte_t; 
    38 typedef octlet_t    fb_octlet_t; 
    39 typedef nodeid_t    fb_nodeid_t; 
    40 typedef nodeaddr_t  fb_nodeaddr_t; 
    41  
    42 #define FORMAT_FB_OCTLET_T      "0x%016" PRIX64 
    43 #define FORMAT_FB_NODEID_T      "0x%016" PRIX64 
    44 #define FORMAT_FB_NODEADDR_T    "0x%016" PRIX64 
    45  
    46 class DeviceManager; 
    47  
    48 struct ffado_handle { 
    49     DeviceManager*   m_deviceManager; 
    50 }; 
     29//#warning "This file is deprecated. Please use ffadotypes.h instead." 
    5130 
    5231#endif 
  • trunk/libffado/src/ffadotypes.h

    r1763 r1770  
    11/* 
    22 * Copyright (C) 2005-2008 by Daniel Wagner 
     3 *           (C) 2009-2009 by Arnold Krille 
    34 * 
    45 * This file is part of FFADO 
     
    2223 */ 
    2324 
    24 #ifndef FBTYPES_H 
    25 #define FBTYPES_H 
     25#ifndef FFADOTYPES_H 
     26#define FFADOTYPES_H 
    2627 
    2728#ifndef __STDC_FORMAT_MACROS 
     
    5051}; 
    5152 
     53 
     54#include <vector> 
     55#include <string> 
     56 
     57class stringlist : public std::vector<std::string> 
     58{ 
     59    public: 
     60        static stringlist splitString(std::string in, std::string delimiter) { 
     61            stringlist result; 
     62            size_type start = 0, end = 0; 
     63            while ( start < in.size() ) { 
     64                end = std::min(in.size(), in.find(delimiter, start)); 
     65                result.push_back(in.substr(start, end-start)); 
     66                start = end+delimiter.size(); 
     67            } 
     68            return result; 
     69        } 
     70 
     71        std::string join(std::string joiner ="") { 
     72            std::string result; 
     73            for ( stringlist::iterator it=begin(); it!=end(); ) { 
     74                result += *it; 
     75                it++; 
     76                if ( it!=end() ) { 
     77                    result += joiner; 
     78                } 
     79            } 
     80            return result; 
     81        } 
     82}; 
     83 
    5284#endif