Skip to content

OcaNetworkInterface#

This document describes the device side implementation of OcaNetworkInterface. This class is documented in the AES70 standard as:

Represents the device's connection to a data network.


Overview#

Class Declaration#

The device side implementation has the following signature.

namespace aes70::device
{
  template <class Implementation>
  class OcaNetworkInterface : public OcaRoot<Implementation>
  {

  };
}

The template argument Implementation may implement the following methods.

Note

The signatures given here are just one possibility and that most methods are optional. Implement only those methods which make sense in the context of your device. See the documentation in Implementing AES70 Classes for more details.

class MyOcaNetworkInterfaceImplementation
{
  // Methods defined by OcaNetworkInterface
  OcaString GetLabel();
  void SetLabel(OcaString Label);
  OcaONo GetOwner();
  std::tuple<OcaRolePath,OcaONoPath> GetPath();
  OcaBoolean GetEnabled();
  void SetEnabled(OcaBoolean Enabled);
  OcaString GetSystemIoInterfaceName();
  void SetSystemIoInterfaceName(OcaString Identifier);
  OcaUint16 GetGroupID();
  void SetGroupID(OcaUint16 Id);
  OcaUint8 GetPrecedence();
  void SetPrecedence(OcaUint8 Precedence);
  OcaString GetAdaptationIdentifier();
  OcaBlob GetActiveNetworkSettings();
  OcaBlob GetTargetNetworkSettings();
  void SetTargetNetworkSettings(OcaBlob Settings);
  OcaBoolean GetNetworkSettingsPending();
  OcaNetworkInterfaceStatus GetStatus();
  OcaUint16 GetErrorCode();
  OcaCounterSet GetCounterSet();
  OcaCounter GetCounter(OcaID16 CounterID);
  void AttachCounterNotifier(OcaID16 CounterID, OcaONo ONo);
  void DetachCounterNotifier(OcaID16 CounterID, OcaONo ONo);
  void ResetCounters();
  void ApplyCommand(OcaNetworkInterfaceCommand Command);

  // Methods defined by OcaRoot
  OcaBoolean GetLockable();
  void SetLockNoReadWrite();
  void Unlock();
  OcaString GetRole();
  void SetLockNoWrite();
  OcaLockState GetLockState();

};

Events#